乐趣区

Jedis的学习

jedis 介绍

Redis 不仅使用命令来操作,而且可以使用程序客户端操作。现在基本上主流的语言都有客户端支持,比如 java、C、C#、C++、php、Go 等
在官方网站里列一些 Java 的客户端,在企业中用的最多的就是 Jedis。

基本使用

public class JedisTest {
    @Test
    public void testJedis() {
        // 创建一个 Jedis 的连接
        Jedis jedis = new Jedis("192.168.232.128", 6379);
        // 执 行 redis 命令
        jedis.set("k1", "jedis");
        // 从 redis 中取值
        String result = jedis.get("k1");
        // 打印结果
        System.out.println(result);
        // 关闭连接
        jedis.close();}
}

运行之后 查看结果:

jedis

在 Jedis 对象构建好之后,Jedis 底层会打开一条 Socket 通道和 Redis 服务进行连接
非常频繁的创建和销毁 Jedis 对象,对性能是存在很大影响的。

连接池的使用

    @Test
    public void testJedisPool() {JedisPoolConfig config = new JedisPoolConfig();
        // 控制一个 pool 最多有多少个状态为 idle(空闲)的 jedis 实例
        config.setMaxIdle(8);
        // 最大连接数
        config.setMaxTotal(18);
        // 创建一连接池对象
        JedisPool jedisPool = new JedisPool(config,"192.168.232.128", 6379);
        // 从连接池中获得连接
        Jedis jedis = jedisPool.getResource();
        String result = jedis.get("k1") ;
        System.out.println(result);
        // 关闭连接
        jedis.close();
        
        // 关闭连接池
        jedisPool.close();}

运行之后 查看结果:

jedis

Jedis 连接集群

@Test
    public void testJedisCluster() {
        // 创建 JedisCluster 对象
        Set<HostAndPort> nodes = new HashSet<>();
        nodes.add(new HostAndPort("192.168.232.128", 7001));
        nodes.add(new HostAndPort("192.168.232.128", 7002));
        nodes.add(new HostAndPort("192.168.232.128", 7003));
        nodes.add(new HostAndPort("192.168.232.128", 7004));
        nodes.add(new HostAndPort("192.168.232.128", 7005));
        nodes.add(new HostAndPort("192.168.232.128", 7006));
        JedisCluster cluster = new JedisCluster(nodes);
        // 通过 cluster 对象的 api 方法,进行 redis 集群的添加和查询操作
        cluster.set("c1", "jedisCluster");
        System.out.println(cluster.get("c1"));
        // 释放资源
        cluster.close();}
退出移动版