Redisson框架的介绍与应用

Redisson框架的介绍
我们来学习Redission框架的讲解及项目集成,首先我们看一下目录,我们第一个要对Redission进行一个介绍,

然后Redission相关的一些官方网站呢,也会介绍给大家,然后把Redission框架集成进来,那首先我们看一下Redission的

一个介绍,Redission是架设在Redis基础上的一个JAVA驻内存数据网格,Redission是基于NIO的Netty框架上,充分的利用了

Redis键值数据库提供的一系列优势,而且Redis在JAVA使用工具包中,常用接口的基础上,为使用者提供一系列具有分布式

特性的常用工具类,这些也会领着大家一起来看一下的

Redission使得原本作为协调单机多线程并发程序的工具包,获得了协调分布式多机多线程的能力,大大降低了

设计和研发大规模分布式系统的难度,这句话我们后续使用Redission,来完成分布式锁的时候,肯定会有体会的,

同时Redission结合各富特色的分布式服务,更进一步简化了分布式环境中,程序相互之间的一个协作,例如我们要

使用的分布式锁

那我们看一下Redission的官方网站,首先他是redission.org,我们在redission的github上,

也可以点链接进去


官网:
https://redisson.org/
官方文档:
https://github.com/redisson/redisson/wiki

然后我们看一下redission的集成,首先我们要添加依赖,我们使用的版本呢,是2.9.0


org.redisson
redisson
2.9.0

同时redission在添加依赖之后,还要加上一个fasterxml的依赖,那后续的实战当中,也会领着来做的


com.fasterxml.jackson.dataformat
jackson-dataformat-avro
2.9.0

//------------------------------------------------------
Redisson框架的应用

1.在项目的pom文件中引入Redisson


org.redisson
redisson
2.9.0

2.在项目的pom文件中引入Redisson的依赖,注意(依赖不要引错了,这里引的是avro的)



com.fasterxml.jackson.dataformat
jackson-dataformat-avro
2.9.0

3.构建Redisson初始化类

@Component
@Slf4j
public class RedissonManager {

private Config config;
private Redisson redisson = null;

private static String redis1Ip = PropertiesUtil.getProperty("redis1.ip");//redis1.ip=127.0.0.1
private static Integer redis1Port = Integer.parseInt(PropertiesUtil.getProperty("redis1.port"));//redis1.port=6379
private static String redis2Ip = PropertiesUtil.getProperty("redis2.ip");//redis2.ip=127.0.0.1
private static Integer redis2Port = Integer.parseInt(PropertiesUtil.getProperty("redis2.port"));//redis2.port=6380

public Redisson getRedisson(){
return redisson;
}
@PostConstruct//在spring加载此类组件(Component)的时候调用此方法。
private void init(){
try {
config.useSingleServer().setAddress(new StringBuilder().append(redis1Ip).append("😊.append(redis1Port).toString());
Redisson.create(config);
log.info("初始化Redisson结束");
} catch (Exception e) {
log.error("redisson init error",e);
}
}

//如果不添加下面这个方法,那项目在关闭Tomcat的时候会有线程未关闭。导致Tomcat无法顺利关闭。(重点)
@PreDestroy //被@PreConstruct修饰的方法会在服务器卸载Servlet的时候运行,并且只会被服务器调用一次,类似于Servlet的destroy()方法。被@PreConstruct修饰的方法会在destroy()方法之后运行,在Servlet被彻底卸载之前。
private void end(){
redisson.shutdown();
}
}

//---------
参考:
https://blog.csdn.net/Leon_Jinhai_Sun/article/details/94585283

posted @ 2021-01-29 16:20  _kerry  阅读(3470)  评论(0)    收藏  举报