CodisLabs / jodis

A java client for codis based on Jedis and Curator
MIT License
218 stars 97 forks source link

示例代码timeout参数问题 #3

Closed matrix-2022 closed 8 years ago

matrix-2022 commented 8 years ago

JedisResourcePool jedisPool = new RoundRobinJedisPool("zkserver:2181", 30000, "/zk/codis/db_xxx/proxy", new JedisPoolConfig()); try (Jedis jedis = jedisPool.getResource()) { jedis.set("foo", "bar"); String value = jedis.get("foo"); }

在你们给出的上述示例代码中,RoundRobinJedisPool构造函数没有传timeout参数,所以使用了默认的JEDIS_POOL_TIMEOUT_UNSET,也就是-1。这样JedisFactory产生的Jedis的timeout也是-1,在运行后会产生Socket错误,提示timeout不能为-1。

Apache9 commented 8 years ago

是我的错。。。 等我改一下发个新版,另外示例代码忘记更新了,0.2.1之后应该用Builder来创建Pool了,直接new的方法应该都Deprecated了 谢谢

matrix-2022 commented 8 years ago

PS,我代码下下来,直接mvn package,会出现javadoc标记错误的提示。。可能是什么问题呀?我对maven不熟,刚用

Apache9 commented 8 years ago

依赖0.2.2再试试,另外我把示例代码修改了,现在推荐这么写

JedisResourcePool jedisPool = RoundRobinJedisPool.create()
        .curatorClient("zkserver:2181", 30000).zkProxyDir("/zk/codis/db_xxx/proxy").build();
try (Jedis jedis = jedisPool.getResource()) {
    jedis.set("foo", "bar");
    String value = jedis.get("foo");
    System.out.println(value);
}

maven编译的问题你再开一个issue吧,发一下具体的错误,谢谢