Redisの分散(C)Redisのクライアントを使用するはじめに

A、Javaの顧客エンド:jedis

  • Jedisを取得
  • Jedis基本的な使い方
  • Jedis使用接続プーリング

1.何Jedisこと?

JedisはRedisの操作のために、公式のクライアントです。Redisのは、クライアントが対応しているさまざまな言語で提供されたプロトコルに従ってください。

の2、Jedis Mavenの依存関係:

	        <dependency>
			<groupId>redis.clients</groupId>
			<artifactId>jedis</artifactId>
			<version>2.9.0</version>
                        <type>jar</type>
                        <scope>compile</scope>
		</dependency>

3、Jedis直连:

    #1.生成一个Jedis对象,这个对象负责和指定Redis节点进行通信

    Jedis jedis = new Jedis("127.0.0.1",6379);

    #2.jedis执行set操作
    
    jedis.set("hello","world");

    #3.jedis执行get操作,value="world"

    String value = jedis.get("hello");

4、Jedisコンストラクタ分析:

Jedis (String host, int port ,int connectionTimeout, int soTimeout)
  • ホスト:IPはRedisのノードマシン
  • Redisのポートノード:ポート
  • ConnectionTimeout:クライアント接続のタイムアウト
  • soTimeout:クライアントの読み込みタイムアウト

5、使用するのは簡単:

    //1.string
    //输出结果: OK
    jedis.set("hello","world");
    //输出结果: world jedis.get("hello"): //输出结果: 1 jedis.incr("counter");
    //2.hash
    jedis.hset("myhash","f1","v1");
    jedis.hset("myhash","f2","v2"); //输出结果:{f1=v1,f2=v2} jedis.hgetAll("myhash");
    // 3.list
    jedis.rpush("mylist","1");
    jedis.rpush("mylist","2"); jedis.rpush("mylist","3"); //输出结果: [1,2,3] jedis.lrange("mylist",0,-1);
    // 4. set
    jedis.sadd("myset","a");
    jedis.sadd("myset","a"); jedis.sadd("myset","a"); //输出结果:[b,a] jedis.smembers("myset");
    // 5. zset
    jedis.zadd("myzset",99,"tom");
    jedis.zadd("myzset",66,"peter"); jedis.zadd("myzset",33,"james"); //输出结果:[[["james"],33.0],[["peter"],66.0],[["tom"],99.0]] jedis.zrangeWithScores("myzset",0,-1);

6、使用にJedis接続プール:

  • Jedis直连
  • Jedis接続プール

スキームの比較

  • JedisPool使用

1)Jedis直连:

接続プーリング:

スキームの比較:

Jedis接続プール:

初期Jedis接続プール、一般的に言えばJedisPool単一の実施形態。

GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig ();

JedisPool jedisPool = new JedisPool(poolConfig,"127.0.0.1",6379);

Jedis jedis = null; try { //1.从连接池获取jedis对象 jedis = jedisPool.getResource(); //2.执行操作 jedis.set("hello","world"); }catch(Exception e ){ e.printStackTrace(); }finallly{ if(jedis != null) //如果使用JedisPool,close操作不是关闭链接,代表归还连接池 jedis.close(); }

おすすめ

転載: www.cnblogs.com/wushaopei/p/11979105.html