jedis 和 redisson 有哪些区别?

摘要:
Jedis和Redisson都用Java封装了Redis操作。Redison不仅封装了Redis,还封装了对更多数据结构、锁和其他功能的支持,比Jedis更大。但Jedis比Redisson更原始、更灵活。Redis官方推荐了十多种Java语言封装框架,主要是Jedis和Redisson。JedisJedis是一个由Java实现的Redis客户端。它的API提供了类似于Redis本机命令的全面支持(=Null){//获取Jedis对象Jedisjedis=JedisPool.getResource();returnjedis;}returnnull;}/***释放jedis资源*/publicstaticvoidreleaseResource{if(jedis!=null){jedis.close();}}RedisonRedisson是一个基于Redis的Java内存数据网格。Redison提供了使用Redis最简单、最方便的方法。

  Jedis 和 Redisson 都是Java中对Redis操作的封装。Jedis 只是简单的封装了 Redis 的API库,可以看作是Redis客户端,它的方法和Redis 的命令很类似。Redisson 不仅封装了 redis ,还封装了对更多数据结构的支持,以及锁等功能,相比于Jedis 更加大。但Jedis相比于Redisson 更原生一些,更灵活。

Redis官方对Java 语言的封装框架推荐的有十多种(Redis 官网),主要是Jedis 、Redisson。

Jedis

Jedis 是Java 实现的Redis 客户端,它的API提供了全面的类似于Redis 原生命令的支持。相比于其他Redis 封装框架更加原生。

它的使用主要是使用JedisPool

初始化:

// 创建JedisPool所需的连接池配置
JedisPoolConfig poolConfig = new JedisPoolConfig();
 
// 最大连接数,默认8
poolConfig.setMaxTotal(1024);
 
// 最大空闲数,默认8
poolConfig.setMaxIdle(100);
 
// poolConfig 各种配置
 
/// 是否启用pool的jmx管理功能, 默认true
poolConfig.setJmxEnabled(true);
 
// 创建JedisPool连接池
jedisPool = new JedisPool(poolConfig, HOST, PORT, TIMEOUT, PASSWORD);

简单使用的demo:

/**
     * 同步获取Jedis
     * @return
     */
    public synchronized static Jedis getJedis(){
 
        if(jedisPool != null){
            //获取Jedis对象
            Jedis jedis = jedisPool.getResource();
            return jedis;
        }
        return null;
    }
    
    /**
     * 释放jedis资源
     */
    public static void releaseResource(Jedis jedis){
        if( jedis !=null ){
            jedis.close();
        }
    }

Redisson

Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括Bitset, Set, MultiMap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Semaphore, Lock, AtomicLong, CountDownLatch, Publish/Subscribe, Bloom filter, Remote service, Spring cache, Executor service, Live Object service, Scheduler service。Redisson提供了使用Redis的最简单和最便捷的方法。Redisson的宗旨是促进使用者对Redis的关注分离(Separation of Concern),从而让使用者能够将精力更集中地放在处理业务逻辑上。(参考)

简单使用的代码demo:

//创建配置  
Config config = new Config();  
  
//指定编码,默认编码为org.redisson.codec.JsonJacksonCodec   
config.setCodec(new org.redisson.client.codec.StringCodec());  
  
//指定使用单节点部署方式  
config.useSingleServer().setAddress("redis://127.0.0.1:6379");  
  
config.useSingleServer().setClientName("root");
config.useSingleServer().setPassword("abcabc");
 
//创建redisson客户端
RedissonClient redisson = Redisson.create(config);  
 
RBucket<String> keyObject = redisson.getBucket("key");  
keyObject.set("value");  
 
//关闭RedissonClient  
redisson.shutdown();  

免责声明:文章转载自《jedis 和 redisson 有哪些区别?》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇js 二分查找法之每日一更MongoDB可视化客户端Studio 3T破解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

关于配置文件Web.config文件的家常事

1. 在Web.config文件中数据库连接字符串的运用      a.将web.config文件中<system.web>标签之上的<connectionStrings />更改如下:          <connectionStrings>            <add  name="ConnStr"  co...

查询Redis缓存

packageme.zhengjie.monitor.rest; importme.zhengjie.common.aop.log.Log; importme.zhengjie.monitor.domain.vo.RedisVo; importme.zhengjie.monitor.service.RedisService; importorg.s...

关于在Linux下的换行符 和windows下的换行符

linux系统下的换行符是 ,windows系统下的换行符是 。 分别在linux下和windows下创建文件linux.config和windows.config,写入几行内容。 通过打印文件的每一个字符的ASCII可以看出来, 的ascii为10, 的ascii为13。 在linux系统下修改windows.config输入换行,再打印可以发现输入的换...

Spring Cache的基本使用与分析

概述 使用 Spring Cache 可以极大的简化我们对数据的缓存,并且它封装了多种缓存,本文基于 redis 来说明。 基本使用 1、所需依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr...

PYMOTW: CONFIGPARSER

感谢PyMOTW中文翻译小组,这是一个很棒的技术文摘,类似于cookbook。  模块: ConfigParser 目的: 读取/写入配置文件,类似于Windows的INI文件 python版本: 1.5+ 1.1 描述       ConfigParser模块可以为你的应用程序创建用户可编辑的配置文件. 这个配置文件由一个个节组成,每个节可以包含配置数...

Apollo 配置中心部署注意事项

    2019 年 12 月份的时候写过一篇文章 Apollo 配置中心初探,当时刚接触 apollo,使用还不是很熟练,只是快速的部署出来了。随后在业务快速迭代的过程中,使用 apollo 的频率越来越高,了解也越来越深入。后来还转载过一篇文章微服务架构~携程Apollo配置中心架构剖析,对 Apollo 的架构解说的很详细,可以让你迅速的掌握配置中心...