当前位置:网站首页>Redis学习笔记-2.客户端的使用
Redis学习笔记-2.客户端的使用
2022-07-26 17:56:00 【天生我才~~】
文章目录
1. Jedis
1.1 认识Jedis

**使用java操作redis的一个中间件,Redis 官方推荐的 java连接开发工具 **
Jedis是Redis官方推出的一款面向Java的客户端,提供了很多接口供Java语言调用。
使用jedis对象,操作方法函数与redis的api完全一致
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>4.1.1</version>
</dependency>
public class TestPing {
public static void main(String[] args) {
// 1、 new Jedis 对象即可
Jedis jedis = new Jedis("127.0.0.1", 6379);
// jedis 所有的命令就是我们之前学习的所有指令!所以之前的指令学习很重要
String response = jedis.ping();
System.out.println(response); // PONG
}
}
1.2 连接Jedis

- 每次相当于一个TCP连接,线程是不安全的

1.3 简单使用



1.4 Jedis连接池使用
与直连对比


- 不用每次进行TCP连接的三次握手,四次挥手

简单使用


连接池配置
1. 资源数控制

(1)适合的maxTotal



(2)适合的maxIdle 和minIdle

- 其实maxTotal属性所表示的最大连接数,只是给出了一个连接数量的上限,
- 而maxIdle属性所代表的最大空闲的连接数,才真正是业务可用的最大连接数。
- 如果maxTotal和maxIdle二者不相等,就会涉及到连接的销毁与创建操作,会产生一定的开销,所以建议设置maxIdle=maxTotal,尽可能的避免由于频繁地创建和销毁连接而造成连接池性能下降,使连接池能够达到最佳性能。

2. 借还参数

3. 常见问题
(1)超时连接

maxWaitMillis设置参数问题
(2)资源耗尽

maxIdle 和minIdle设置不相等的情况
4. 解决思路


5. 常见问题案例演示
- 连接泄露-没有关闭连接




2. lettuce
在 SpringBoot2.x 之后,原来使用的jedis 被替换为了 lettuce?
jedis : 采用的直连,多个线程操作的话,是不安全的,
- 如果想要避免不安全的,使用 jedis pool 连接池! 更像 BIO(阻塞) 模式
lettuce : 采用netty,实例可以再多个线程中进行共享,不存在线程不安全的情况!
- 可以减少线程数据了,更像 NIO 模式

3. redis -py(Pathon客户端)
3.1 获取redis-py

3.2 基本使用




4. go语言客户端
4.1 Redigo客户端选择

3.2 连接

3.3 基本使用

边栏推荐
猜你喜欢

Linked list - the first common node of two linked lists

网络协议:TCP/IP协议

Learn UML system modeling from me

455. 分发饼干【双指针 ++i、++j】

2022G1工业锅炉司炉上岗证题库及模拟考试

Redis master-slave replication, read-write separation, sentinel mode

The class jointly built by famous oarsmen is new, and Professor qiuxipeng of Fudan University broadcast it live on Tuesday!

Multi merchant mall system function disassembly Lecture 16 - platform side member growth value record

Offer set (1)

Seata 入门简介
随机推荐
Download and configuration of irrklang audio library
2022年焊工(初级)操作证考试题库及模拟考试
NFT数字藏品系统开发:同道大叔首推祈福系列数字藏品开售即罄
Brand new! Uncover the promotion route of Ali P5 Engineer ~p8 architect
rancher部署kubernetes集群
VTK (the Visualization Toolkit) loads STL models
[soft exam] soft exam tutorial + real questions over the years
js map使用
凝心聚力,心心向印!印度中资手机企业协会(CMA)正式运营!
项目中@RequestMapping的作用以及如何使用
455. Distribute cookies [double pointer ++i, ++j]
【MySQL从入门到精通】【高级篇】(八)聚簇索引&非聚簇索引&联合索引
Still using xshell? Recommend this more modern terminal connection tool
NFT digital collection development: digital collections help enterprise development
多商户商城系统功能拆解16讲-平台端会员成长值记录
【Swoole系列3.1】进程、线程、协程,面试你被问了吗?
文件上传下载测试点
JS刷题计划——链表
Multi merchant mall system function disassembly Lecture 16 - platform side member growth value record
JS使用readline来实现终端输入数据