Redis 使用教程

1. Redis的安装过程

(1) 下载Redis

这里就随便下,无论是安装包也好压缩包也好怎么都行

(2) 配置环境变量

配完了之后可以不需要进入Redis的那个目录,然后可以直接敲redis.....把这个服务启动起来。

(3) 把Redis变成一个服务

至少你在服务页面估计能看到他,然后定成自动启动,省的天天手动。

(4) 设置密码

在Redis这个文件夹里面编辑redis.windows-service.conf,类似的conf文件有两个,千万分清楚这个后面带service的。
使用这种方式设置是永久性设置。


(5) 打开本地客户端

如果要查询里面的键值对是什么之类的,就用redis-cli。
设置了密码之后,上来输入的就是 auth 123456(根据自己的密码改)


###########################################################
安装、打开、设置密码(就是配Redis环境)这些应该也可以用docker完成

2. SpringBoot集成Redis

(1) 在pom里导入一个jar包
(2) yml配置
  redis:
    host: localhost # Redis服务器地址
    database: 0 # Redis数据库索引(默认为0)
    port: 6379 # Redis服务器连接端口
    password:"test" # Redis服务器连接密码(默认为空,以及这里带引号!!!)
    jedis:
      pool:
        max-active: 8 # 连接池最大连接数(使用负值表示没有限制),能制造出来的最大的连接数
        max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制)
        max-idle: 8 # 连接池中的最大空闲连接,空闲太多可能销毁
        min-idle: 0 # 连接池中的最小空闲连接,务必保持几个控线连接
    timeout: 3000ms # 连接超时时间(毫秒)
(3) 注入Template开始用

经过了上两个步骤之后,其实就已经配置好了,在代码里面注入Template就可以set、get然后启用了。

Teplate目前已知的有两种,一种是RedisTemplate,一种是
StringRedisTemplate(这种其实也就是RedisTemplate<String,String>),就是封装了一下写的高大上了。
所以自己用的时候只能用RedisTemplate,如果需要的话自己写泛型。

序列化器:
由于RedisTemplate里面注入的直接就是object,需要被缓存的类实现了Serielizable接口才行。

简单写一下Serielizable:
Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行状态时,这些对象才能存在,即,这些对象的生命周期不会比JVM更长。但在现实中,就可能要求在JVM运行停止后能够保存(持久化),以便下次运行时重新获取对象,Java对象序列化就能够帮助我们实现该功能。
网络上远程传递的时候也需要实现这个功能。

如果仅仅只是让某个类实现Serializable接口,而没有其他处理的话,则就是使用默认序列化机制。使用默认机制,在序列化对象时,不仅会序列化当前对象本身,还会对该对象引用的其他对象也进行序列化,同样的,这些其他对象引用的另外对象也将被序列化,以此类推。所以,如果一个对象的成员变量是容器类对象,而这些容器含有的元素也是容器类对象,那么这个序列化对象的过程就会很复杂,开销也很大。
transient关键字可以忽略掉某些字段。

3. Redis连接池

(1) 为什么要用连接池:

连接池定义:连接池是创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程。

连接池管理的就是连接,每次存取数据的时候,都要new一个连接对象出来,建立一个TCP连接要经历三次握手什么的,这样挺浪费时间的,所以每次用完连接对象之后不释放,存到连接池里面去,下次用连接对象的时候去连接池里面获取。

(2) 手写Redis连接池:

Redis连接池这东西一共就三个函数,一个init,一个getResource,一个release。
其中尤其以getResources为核心。

首先如果要完成连接池保存,要有存储容器,set、list、queue、array、map这些是要选择一下的。
频繁的存取,不能用array,不能用array的也不能用list,map不需要key,queue和set两个平分,最终用queue。
那就要有两个queue来放置空闲的和被使用的连接。

getResource的调用流程:(中间把config都用上了)
如果有空闲连接直接返回
没有空闲的但是目前总数还没超过max,可以再new一个
总数已经到max了,没法new了就只能等
如果超过了等待时间,返回报错

release调用流程:
把这个连接从使用中队列移动到空闲队列

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,589评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,615评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,933评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,976评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,999评论 6 393
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,775评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,474评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,359评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,854评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,007评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,146评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,826评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,484评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,029评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,153评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,420评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,107评论 2 356

推荐阅读更多精彩内容

  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 3,855评论 0 5
  • ->点击访问个人博客地址,相互交流学习<- Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个...
    JackHCC阅读 1,449评论 1 2
  • 架构 OS:Centos6.8 Redis01:172.17.100.130(sentinel-1,sentine...
    飞翔的Tallgeese阅读 631评论 0 2
  • 对不起,我不够强。 来吧,站在刀尖上舞蹈,在绝望中生存。
    dustcellar阅读 196评论 0 0
  • 原文链接:Who Owns the Moon? A Space Lawyer Answers 短评:几个世纪前,当...
    Gliko阅读 402评论 0 0