Redis客户端-Java

发布时间:2026/7/24 23:52:21

Redis客户端-Java
1. Redis协议-RESP1.1 认识协议为什么可以编写出一个自定义的Redis客户端网络通信中会有很多的“协议”除了应用层协议以下的协议都是固定好的是在系统内核或者驱动程序中实现的我们无法修改关于应用层业界有很多成熟的应用层协议如HTTP.....但是在很多时候都会“自定义”应用层协议作为第三方想要开发一个Redis客户端也需要知道Redis的应用层协议Redis官网有1.2 RESP介绍RESP的优点简单好实现快速进行解析肉眼可读传输层这里基于TCP但是和TCP没有强耦合请求和响应之间的通信是一问一答的形式客户端发一个请求服务器返回一个响应Redis客户端服务器要做的工作为1. 按照上述格式构造出字符串往socket中写入2. 从socket中读取字符串按照格式解析这套协议已经公开许久有很多大佬实现了这套协议的解析/构造是要使用这些大佬们提供的库就可以比较简单的来完成和Redis服务器通信的操作java生态中封装了RESP协议实现的Redis客户端是有很多的此博客使用jedis通过Maven下载2. 客户端2.1 配置隧道sshJava开发代码还是高度依赖windowsIDEA光修改成外网IP是不够的6379端口默认是被云服务器的防护墙保护起来的Redsi的端口一旦公布到公网上就会非常容易被入侵解决方法1. 直接让java程序在Linux上运行需要将代码打包成jar包拷贝到Linux服务器上执行比较麻烦2. 配置ssh端口转发把云服务器的Redis端口映射到本地主机ssh协议、程序默认走的是22端口ssh功能非常强大其中很重要的特性就是能够支持端口转发相当与通过ssh的22端口来传递其他端口的数据一个Linux主机上存在的服务器有很多ssh也可能需要给多个端口传递数据这个时候为了区分不同的端口往往会把服务器的端口在本地用另外一个端口来进行表示2.2 java客户端Jedis引入依赖JedisPool 和 JedisPooled老方式JedisPool你需要亲自去“车库”连接池借一辆车连接用完必须亲自还回去close忘了还车就会导致“车库”堵死连接泄漏。新方式JedisPooled你只需要告诉“滴滴打车”JedisPooled你要去哪里它自动在后台借车、开过去、办完事、再自动还车。你完全不用管“借”和“还”的细节JedisPooled绝对没有“不需要连接池”。恰恰相反它底层依然依赖JedisPool这个连接池。当你执行new JedisPooled(tcp://...)时它内部立即创建了一个 JedisPool。你调用jedisPooled.set(key,val)时它内部自动执行了pool.getResource()借 - 执行操作 -jedis.close()还。它的进步只在于把“手动借还”的代码自动化了而不是把“池子”去掉了。基础操作set和getexists和delkeysexpire和ttltype字符串操作mget 和 msetgetrange 和 setrangeappendincr 和 decr列表操作lpush 和 lrangerpushrpop 和 lpopblpop 和 brpopresults.get(0)不是取 List 里的第 0 个元素虽然语法上是而是取 Redis 返回的“二元组”里的第一个字段——即“被弹出的 Key 的名字”。llen集合操作sadd 和 smemberssismemberscardspop是随机删除的sinter 和 sinterstore哈希表操作hset 和 hgethexistshdelhkeys 和 hvalshmget 和 hmset有序列表操作zadd 和 zrangezcardzremzscorezrank2.3 JavaSpring 客户端创建项目引入依赖字符串操作列表操作集合操作哈希表操作有序集合操作

相关新闻

九大网盘直链获取终极指南:告别官方客户端,拥抱高效下载新时代

九大网盘直链获取终极指南:告别官方客户端,拥抱高效下载新时代

2026/7/24 23:52:21

九大网盘直链获取终极指南:告别官方客户端,拥抱高效下载新时代 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / …

Windows Defender移除终极方案:如何彻底关闭系统自带杀毒软件

Windows Defender移除终极方案:如何彻底关闭系统自带杀毒软件

2026/7/24 23:52:21

Windows Defender移除终极方案:如何彻底关闭系统自带杀毒软件 【免费下载链接】windows-defender-remover A tool which is uses to remove Windows Defender in Windows 8.x, Windows 10 (every version) and Windows 11. 项目地址: https://gitcode.com/gh_mirr…

Hot 100 ---腐烂的橘子

Hot 100 ---腐烂的橘子

2026/7/24 23:52:21

本文概览:本文以LeetCode题目"腐烂的橘子"为例,讲解多源BFS的思路——所有腐烂橘子同时扩散,每轮加1分钟,最后用新鲜橘子计数判断是否全部腐烂一、题目二、题目分析 题目要求:每分钟,腐烂的橘子会…

算法日常・每日刷题--<快速排序>2

算法日常・每日刷题--<快速排序>2

2026/7/25 1:42:41

912. 排序数组 - 力扣(LeetCode)912. 排序数组 - 给你一个整数数组 nums,请你将该数组升序排列。你必须在 不使用任何内置函数 的情况下解决问题,时间复杂度为 O(nlog(n)),并且空间复杂度尽可能小。 示例 1&#xff1a…

ORB-SLAM3 Relocalization 2

ORB-SLAM3 Relocalization 2

2026/7/25 1:42:41

Tracking::Relocalization() 是ORB-SLAM3在跟踪丢失后尝试“找回”自身位置的核心函数。它利用词袋模型(BoW)进行图像检索,并使用MLPnP算法进行位姿估计,是系统鲁棒性的重要保障。 下面是该函数在ORB-SLAM3中的完整代码与详细解读。 📝 完整代码 cpp bool Tracking::…

第2章C语言基本概念 练习题

第2章C语言基本概念 练习题

2026/7/25 1:42:41

2.1节 1.建立并运行由Kerighan和Ritchie编写的著名的“hello,world”程序:#include <stdio.h>int main(void) {printf("Hello World");return 0;}2.2节 2.思考下面的程序:#include <stdio.h> // 预处理指令int main(void) {printf("Parkinsons Law…

YOLO 11与Qwen3.5构建智能安防系统实战

YOLO 11与Qwen3.5构建智能安防系统实战

2026/7/25 1:42:41

1. 项目背景与核心价值最近在帮某园区做安防升级时&#xff0c;发现传统监控系统存在两个致命缺陷&#xff1a;一是需要人工24小时盯屏&#xff0c;二是事后查录像效率极低。于是尝试用YOLO 11结合Qwen3.5大模型搭建了一套智能分析系统&#xff0c;实测效果超出预期——不仅能实…

企业AI转型实战:从技术落地到业务融合

企业AI转型实战:从技术落地到业务融合

2026/7/25 1:42:41

1. 企业AI转型的现状与挑战过去三年间&#xff0c;我参与了17家传统企业的AI转型咨询项目&#xff0c;发现一个共性现象&#xff1a;超过80%的企业在AI落地过程中遭遇"技术-业务"断层。某制造业客户曾投入300万构建了先进的计算机视觉质检系统&#xff0c;但半年后实…

计算机毕业设计之基于node.js旅游管理系统

计算机毕业设计之基于node.js旅游管理系统

2026/7/25 1:32:41

随着新经济的需求和新技术的发展&#xff0c;特别是网络技术的发展&#xff0c;如果可以建立起旅游管理系统&#xff0c;可以改变传统线下管理方式&#xff0c;在过去的时代里都使用传统的方式实行&#xff0c;既花费了时间&#xff0c;又浪费了精力。在信息如此发达的今天&…

微服务进阶:服务网格与Istio

微服务进阶:服务网格与Istio

2026/7/24 4:17:29

541|微服务进阶:服务网格与Istio 上篇文章我们聊了微服务的基本概念和拆分方法。 但微服务多了,问题也多了: 服务之间怎么通信? 怎么监控每个服务的调用链路? 熔断、限流、重试怎么做? 安全认证怎么统一? 以前这些都靠SDK库(比如Hystrix、Feign),每个服务都要集成…

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

零售超级终端全域协同:ShareKit 碰一碰商品流转业务落地案例

2026/7/24 19:29:25

一、零售门店全域协同业务背景与行业痛点 1.1 门店超级终端设备矩阵&#xff08;连锁便利店/商超标准配置&#xff09; 自助收银Kiosk一体机&#xff1a;顾客结算、自助核销优惠券、商品素材预览&#xff1b;运营折叠平板&#xff1a;店长后台商品上新、图片录入、活动配置、…

噗叽短视频界面分析

噗叽短视频界面分析

2026/7/23 1:54:13

1 和小红书类似&#xff0c;可以采用类似判断方法------------其实他比小红书好判断&#xff0c;因为他没有图片&#xff0c;控件位置几乎是固定的&#xff0c;都不用判断------------2 因为他没有点赞按钮------------而且几乎所有控件位置都是完全一样的&#xff0c;所以我就…

挑战一天速通Spring全家桶!

挑战一天速通Spring全家桶!

2026/7/25 0:02:22

不知道各位Java好大哥们闲的时候会不会去关注Spring目前的官网&#xff0c;你会发现他的slogan是: Spring makes Java Simple。它让Java的开发变得更加简单。某种意义上来说&#xff1a;是Spring成就了Java&#xff01;但随之而来的就是&#xff1a;由他之后诞生出来的各种组件…

挑战一天速通Java高并发!

挑战一天速通Java高并发!

2026/7/25 0:02:22

有出去面试的朋友肯定深有感受&#xff0c;像我们刚入行那会面试的加分项现在卷得已经成为了面试的基础题&#xff08;手动狗头&#xff09;。其中最典型的就属这个Java并发编程了。之前一般只有大厂才会有高并发编程相关的面试内容&#xff0c;但现在只要你入了Java行业就会涉…

从暴雪到米哈游都在用的平衡性评估框架,深度拆解LSTM+胜率归因分析法(附开源工具链)

从暴雪到米哈游都在用的平衡性评估框架,深度拆解LSTM+胜率归因分析法(附开源工具链)

2026/7/25 0:02:22

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;AI 游戏平衡性分析 现代游戏开发中&#xff0c;AI 不再仅用于控制 NPC 行为&#xff0c;更被深度整合进游戏平衡性调优流程。通过强化学习与对抗性仿真&#xff0c;AI 可以在数百万局对局中自动识别数值失衡点…