当前位置:网站首页>redis集群模拟消息队列
redis集群模拟消息队列
2022-07-05 19:11:00 【玄妙之门】
- 准备工作:安装redis并搭建好集群
- IDEA新建项目编写测试类RedisTest,添加集群环境配置代码
private Jedis jedis;
private JedisCluster jedisCluster;
@Before
public void connectionRedis(){
jedis = new Jedis("192.168.1.118",6379);
//jedis = new Jedis("192.168.1.20",6382);
//jedis.auth("123456");
HostAndPort hp1 = new HostAndPort("192.168.1.20", 6381);
HostAndPort hp2 = new HostAndPort("192.168.1.20", 6382);
HostAndPort hp3 = new HostAndPort("192.168.1.20", 6383);
HostAndPort hp4 = new HostAndPort("192.168.1.20", 6384);
HostAndPort hp5 = new HostAndPort("192.168.1.20", 6385);
HostAndPort hp6 = new HostAndPort("192.168.1.20", 6386);
Set<HostAndPort> hostAndPortSet = new HashSet<>();
hostAndPortSet.add(hp1);
hostAndPortSet.add(hp2);
hostAndPortSet.add(hp3);
hostAndPortSet.add(hp4);
hostAndPortSet.add(hp5);
hostAndPortSet.add(hp6);
jedisCluster = new JedisCluster(hostAndPortSet);
}
- 添加入队测试方法
//集群模式测试入队操作
@Test
public void testEnterQueue(){
jedisCluster.lpush("queue-1","感谢您对本店的支持");
}
- 添加出队测试方法
//集群模式测试出队操作
@Test
public void testOutQueue() throws InterruptedException{
Thread t = new Thread("thread-getmsg"){
@Override
public void run() {
while(true){
String s = jedisCluster.rpop("queue-1");
if(null==s){
try {
Thread.sleep(3*1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
System.out.println(s);
}
}
};
t.start();
t.join();//保证子线程结束后主线程才结束
}
可以看到消息队列中如果没有消息,则线程休眠3秒执行,这样可有效防止CPU空转
边栏推荐
- Android interview, Android audio and video development
- Oracle date format conversion to_ date,to_ char,to_ Timestamp mutual conversion
- 2022 the latest big company Android interview real problem analysis, Android development will be able to technology
- CF: B. almost Ternary Matrix [symétrie + règles de recherche + Construction + I am Construction Waste]
- 2022 the most complete Tencent background automation testing and continuous deployment practice in the whole network [10000 words]
- Vagrant2.2.6 supports virtualbox6.1
- Cf:b. almost Terry matrix [symmetry + finding rules + structure + I am structural garbage]
- JAD的安装、配置及集成IDEA
- Blue sky drawing bed Apple quick instructions
- Django uses mysqlclient service to connect and write to the database
猜你喜欢
软件测试是干什么的?学习有啥要求?
Fuzor 2020 software installation package download and installation tutorial
Hiengine: comparable to the local cloud native memory database engine
基于FPGA的超声波测距
Tupu software digital twin | visual management system based on BIM Technology
详解SQL中Groupings Sets 语句的功能和底层实现逻辑
Redhat7.4 configure Yum software warehouse (rhel7.4)
在线协作产品哪家强?微软 Loop 、Notion、FlowUs
android中常见的面试题,2022金九银十Android大厂面试题来袭
100million single men and women supported an IPO with a valuation of 13billion
随机推荐
Technology sharing | common interface protocol analysis
HiEngine:可媲美本地的云原生内存数据库引擎
Reflection and imagination on the notation like tool
Explain in detail the functions and underlying implementation logic of the groups sets statement in SQL
Notion 类生产力工具如何选择?Notion 、FlowUs 、Wolai 对比评测
基于FPGA的超声波测距
[today in history] July 5: the mother of Google was born; Two Turing Award pioneers born on the same day
图扑软件数字孪生 | 基于 BIM 技术的可视化管理系统
国内低代码开发平台靠谱的都有哪些?
Hiengine: comparable to the local cloud native memory database engine
flume系列之:拦截器过滤数据
cf:B. Almost Ternary Matrix【对称 + 找规律 + 构造 + 我是构造垃圾】
Fuzor 2020 software installation package download and installation tutorial
The binary string mode is displayed after the value with the field type of longtext in MySQL is exported
word如何转换成pdf?word转pdf简单的方法分享!
Tupu software digital twin | visual management system based on BIM Technology
Debezium系列之:修改源码支持drop foreign key if exists fk
Debezium系列之:postgresql从偏移量加载正确的最后一次提交 LSN
618“低调”谢幕,百秋尚美如何携手品牌跨越“不确定时代”?
IBM大面积辞退40岁+的员工,掌握这十个搜索技巧让你的工作效率至上提高十倍