前言
秋高气爽的一天,那时候年轻帅气的我正在参照着搜索引擎写代码,迷之微笑般的敲着键盘(又从搜索引擎上找到代码案例啦),突然领导在小隔间里传来了呼唤声,然后有了以下场景:
领导:小Z,你过来一下;
当时小年轻的我,拿上纸和笔以迅雷不及掩耳之势般的速度来到领导跟前;
领导:有个需求,把现在xxx项目的Redis持久化给用上,最好今天下班前搞定,然后用上;
初碰Redis的我,当时很懵,只会简单的程序操作,只能小声的回复:好的,我回去查查;
真实案例,短短两句话就把需求沟通完了,肯定是有问题的,不是领导没说清楚,而是当时真是菜的不行,连问啥都不知道。好在最后在同事的帮助之下多次与领导沟通,最终完成任务。
对于真正做事,上面的工作需求沟通是有很大问题的:比如持久化频率?对持久化数据完整性的要求?这些都不确定,最终可能得到结果就不一样,最主要是这些功能直接通过Redis配置文件修改即可完成,当时听到需求的时候还以为要写程序,心里还想着这么短的时间咋能完成。所以学习很重要,类似于这种通过配置文件进行功能配置的应用实在太多,比如MySql,ngnix等等。
既然知道是这么回事,肯定要避免下次出现同样的尴尬,于是把Redis配置文件啃了一遍;
正文
redis的配置文件注释其实很详细,在配置文件中,用#开头的形式对每个配置项进行描述说明,如下图对端口的说明:
配置文件位置,这里仅参考,具体根据本机路径查看:
windows中与运行程序在一块,如下图:
linux中的配置文件一般默认为:/usr/local/redis/etc/redis.conf
注:不管是windows还是linux,后续如果需要改配置文件,都建议拷贝一份出来进行修改。
上菜吧,根据Redis配置文件的分段,将配置进行如下图归类:
本来想以文字的形式归纳总结的,但却不知道如何排版,这里就将其总结成一个思维导图,显得直观,如下:
单位说明(不分大小写)
INCLUDES(引入外部配置文件)
NETWORK(网络配置)
GENERAL(常规配置)
SNAPSHOTTING(快照,redis持久化的方式之一,保存文件名以.rdb结尾)
REPLICATION(主从复制)
SECURITY(安全)
LIMITS(限制)
APPEND ONLY MODE(追加,Redis持久化方式之二,保存文件名为.aof)
LUA SCRIPTING(Lua脚本相关配置)
REDIS CLUSTER(Redis集群,实现高可用)
SLOW LOG(慢查询记录)
LATENCY MONITOR(延时监控)
ADVANCED CONFIG(高级配置,优化存储,一般都是默认值,这里先不列出来啦)
以上内容只是对Redis配置文件进行解读,后续会针对功能点进行举例演示,比如结合持久化、主从复制、哨兵模式、集群搭建等相关知识点将对应配置进行实例演习,小伙伴敬请期待吧;文中的命令是使用Windows中的配置文件参考的,版本较低,可能命令名称有细微改动,但功能不变。
总结
这节的主要目的是解读配置文件内容,大概理解配置文件中各项配置的意思,当遇见相关需求时,有一个正确的思路,避免文章刚开始那种场景发生到小伙伴身上,至少有讨论的资本,最终把需求快速理解透。下一篇说说Redis事务。
Redis配置文件整体的脑图已经上传到公众号上,关注"Code综艺圈",发送Redis即可;
整理了一些面试资料,关注公众号“Code综艺圈”,发送"面试"获取下载地址,至于教程,手里的也有一些Web前端、.Net后端、Java的教程,但现在网上资源比较多,大部分小伙伴喜欢在线看;如果有需要,小伙伴可以私聊我,目前先把面试相关的资料放上去,收集内容会持续更新,包含一些大厂面试题,助力小伙伴找到心仪的工作:
教程截取部分图如下,有需要私聊我:
一个被程序搞丑的帅小伙,关注"Code综艺圈",识别关注跟我一起学~~~
撸文不易,莫要白瞟,三连走起~~~~