Jedis 连接Redis 集群[通俗易懂]

2022-09-30 10:51:32 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

1. Jedis实现了连接Redis集群的操作,但是操作Redis集群的API是JedisCluster,和单机版api不一致 (Jedis);

2. 创建JedisCluster需要一个Set集合,Set集合的每一个元素是HostAndPort; JedisCluster实际上可以根据一个节点的IP和端口号自动发现集群中的其它节点;

代码:

代码语言:javascript复制
package com.etoak;

import redis.clients.jedis.HostAndPort;
import redis.clients.jedis.JedisCluster;

import java.util.HashSet;
import java.util.Set;

public class ClusterTest {
    public static void main(String[] args) {
        //set 集合,用来装集群的ip 和端口的
        Set<HostAndPort> nodes = new HashSet<>();
        //通过for循环把集群的主机信息装到集合
        for (int port = 8001;port<=8006;port  ) {
            nodes.add(new HostAndPort("192.168.132.139",port));
        }

        //创建JedisCluster
        JedisCluster cluster = new JedisCluster(nodes);
        //set k v
        cluster.set("name","et2106");
        //hset k field value
        cluster.hset("user:1","id","1");
        cluster.hset("user:1","x","x");
        //sadd
        cluster.sadd("set","a","b","c");

        System.out.println(cluster.get("name"));

        cluster.hgetAll("user:1").forEach((k,v)-> System.out.println(k ":" v));

        cluster.smembers("set").forEach(x-> System.out.println(x));

        cluster.close();



    }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

0 人点赞