刚刚又回答了一次javaeye的发帖规则提问,不知道现在发的这个帖子有没有人发布过,呵呵。。。
Redis的java版客户端有两个:JDBC-Redis 和 JRedis,听了好多评论说JDBC-Redis的性能并不怎么样,so直接使用JRedis。
在测试并发的时候,为了模拟项目实际的场景,所以每次的增读都调用一次JRedisClient的ping即建立连接操作(当然可以将客户端维护起来而不更多的建立连接,问题可能就不出现了,这里只讨论问题),如此运行几次之后,客户端抛出异常
Exception in thread "Thread-1270" java.lang.OutOfMemoryError: Java heap space
经过查看线程数,确认是客户端中存在了很多的线程没有被关闭掉所致。
使用JRedis1.0RC版中给定的测试类HelloAgain进行DEBUG看了一下这些启动的线程,发现后台启动了一个守护线程跟Redis服务端作heartbeart,但是在执行jredis.quit()后却并没有退出,图示如下:
run的代码为:
private void run(String password) {
try {
JRedis jredis = new JRedisClient("10.10.13.31", 6379, "jredis", 0);
jredis.ping();
if (!jredis.exists(key)) {
jredis.set(key, "Hello Again!");
System.out.format("Hello! You should run me again!\n");
} else {
String msg = toStr(jredis.get(key));
System.out.format("%s\n", msg);
}
jredis.quit(); //注意这行,方法注释为:Disconnects the client
} catch (RedisException e) {
//省略
}
}
我想这应该是bug吧,呵呵。等会再去Jredis网站上看一眼,是否对它进行了修复。。。
- 大小: 12.1 KB
分享到:
相关推荐
Redis 客户端 JRedis ,JRedis 是一个高性能的 Java 客户端,用来连接到 Redis 分布式哈希键-值数据库。提...
jedis实现对redis的string、hash、link、set、sort set等redis支持的数据类型的操作方法,通过配置属性实现单机redis和集群redis的快速实现,集群redis采用哨兵sentinel模式。
redis mac 客户端,redis desktop manager for mac 0.9.3.39,用于管理redis数据库
Jedis 是 Redis 官方首选的 Java 客户端开发包。此包包含最新的版本截止2018-06-10,版本2.9.0,并且包含依赖的JAR包,仅需导入即可使用。
flink连接redis自定义连接器 eg: "CREATE TABLE redis_dim (\n" + "key String,\n" + "res String\n" + ") WITH (\n" + " 'connector.type' = 'redis', \n" + " 'redis.ip' = '10.100.1.15', \n" + " '...
redis java 客户端,里面包含两个jar文件、jedis-2.1.0.jar和commons-pool-1.5.6.jar
redis集群客户端管理工具
jedis:Redis的Java客户端
一个简单java客户端Jedis,大家可以到https://github.com/xetorthio/jedis这网址下载相关源码 这里对其进行一个简单封转 包括key valye set list hashset的封装
Redis Java客户端Jedis 2.9.0 jar+commons-pool2-2.4.2
Redis推荐的最好的.Net客户端。 ServiceStack.Redis 4.0 已经收费 并且有每小时6000次插入的限制。这个是ServiceStack.Redis 3系版本的最终最新版本3.9.60,无使用限制, Redis.NET客户端无限制版
redis windows 客户端 redis windows 客户端 redis windows 客户端 redis windows 客户端 redis windows 客户端 redis windows 客户端 redis windows 客户端 redis windows 客户端 redis windows 客户端 redis ...
RedisClient是Redis客户端的GUI工具,使用Java swt和jedis编写,可以方便开发者浏览Redis数据库。该软件支持简体中文,非常适合国内用户使用,不需要汉化就可以直接使用。RedisClient将redis数据以资源管理器的界面...
redis客户端连接工具 redis客户端连接工具 redis客户端连接工具
Redis协议客户端模块.rar
使用redis解决nginx+tomcat负载集群的session共享问题(适用于jdk1.7 tomcat7)
Tomcat-redis-session-manager实现Tomcat集群部署中的Session共享,其中需要使用到的一个jar包(支持Tomcat7)。此开源组件GitHub地址:https://github.com/jcoleman/tomcat-redis-session-manager
redis 远程客户端管理工具
redis-java-client-profile 分布式和线性可伸缩性Redis Java客户端的对比分析