wilsonp / jodis

A java client for codis based on Jedis and Curator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

#Jodis - Java client for codis

Build Status

Jodis is a java client for codis based on Jedis and Curator.

##Features

  • Use a round robin policy to balance load to multiple codis proxies.
  • Detect proxy online and offline automatically.

##How to use Add this to your pom.xml. We deploy jodis to https://oss.sonatype.org.

<dependency>
  <groupId>io.codis.jodis</groupId>
  <artifactId>jodis</artifactId>
  <version>0.3.0</version>
</dependency>

To use it for Codis2.x:

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);
}

Or for Codis3.x with jodis_compatible=false:

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

Note: JDK7 is required to build and use jodis. If you want to use jodis with JDK6, you can copy the source files to your project, replace ThreadLocalRandom in BoundedExponentialBackoffRetryUntilElapsed and JDK7 specified grammar(maybe, not sure) , and then compile with JDK6.

About

A java client for codis based on Jedis and Curator

License:MIT License


Languages

Language:Java 100.0%