redis
leejiliang
Just do it
展开
-
redis-cient-sentinel
客户端实现高可用获取所有sentinel的节点找到可用节点获取master地址验证是否为master节点如果master发生变化,sentinel发布消息,客户端订阅。JedlisSentinelPool sentinelPool=new JedisSentinelPool(masterName,sentinelSet,poolConfig,timeout);Jedis jedi...原创 2019-09-16 22:29:58 · 82 阅读 · 0 评论 -
redis-sentinel
主从复制高可用? :故障处理: 1. 手动故障转移 2. 写能力和存储能力受限架构主从结构,多sentinel节点, 客户端从sentinel获取redis信息故障转移多个sentinel发现并确认master有问题.选举出一个sentine作为领导选一个slave作为master通知其余slave成为新的master的slave通知客户端主从发生变化等待老的mas...原创 2019-09-16 22:29:43 · 78 阅读 · 0 评论 -
redis-CacheCloud
Redis规模化运维的问题发布构建繁琐节点太多运维成本过高监控报警比较初级CacheCloud一键开启Redis机器、应用、监控报警客户端:透明,性能上报可视化运维已存在redis直接接入https//github.com/sohutv/cachecloud...原创 2019-09-16 22:30:38 · 121 阅读 · 0 评论 -
redis-缓存设计和优化
缓存的收益与成本收益加速读写降低后端负载成本数据不一致代码维护成本更高:多了一层缓存逻辑运维成本:Redis cluster使用场景降低后端负载: 对高消耗的运算结果进行缓存加速请求响应 I/0大量写合并为批量写:先累计在DB持久化缓存更新策略LRU/LFU/FIFO算法剔除: maxmemory-policy超时剔除:expire主动更新:开发控制生命...原创 2019-09-16 22:30:21 · 162 阅读 · 0 评论 -
redis-复制的原理和优化
单机缺点: 机器故障无法使用, 容量瓶颈(大内存), QPS瓶颈主从复制slave 复制 master节点数据(1对1 , 1对多)为数据提供多份副本,扩展读性能, 1个slave只能有一个master, 数据流向是单向的, master到slave两种实现方式slaveof ip:端口 (在slave上执行)取消同步: slaveof no one配置sl...原创 2019-09-16 22:29:12 · 88 阅读 · 0 评论 -
redis-开发运维常见问题
fork 操作同步操作与内存量息息相关:内存越大,耗时越长info:latest_fork_usec 上一次fork操作的耗时微妙数改善fork优先使用物理机或者高效支持fork操作的虚拟机化技术控制redis实例最大可用内存合理配置系统内存分配策略降低fork频率子进程外开销CPU 开销:RDB和AOF文件生成,属于CPU密集型任务优化: 不做CPU绑定,不和CP...原创 2019-09-16 22:29:22 · 386 阅读 · 0 评论 -
redis-持久化
作用RDBAOFRDB/AOF选择作用将内存中的数据保存到物理硬盘上,防止数据丢失。支持恢复。持久化方式:快照(mysqlDump,rdb)、写日志(mysql binlog,hbase hlog, aof)RDBrdb文件是一个二进制文件,是存储在硬盘中的。也是一种复制媒介触发机制:save(同步)执行save命令,会导致redis执行队列发生阻塞。数据量大...原创 2019-09-16 22:29:03 · 82 阅读 · 0 评论 -
redis-cluster
呼唤集群并发量redis 10W/每秒 ,超过10W时,如何处理?数据量内存容量超过单机物理内存, 如何处理?网络流量单机网络流量无法满足时如何处理?简单解决方案: 增强单机性能.瓶颈明显. 替代方案: 分布式(cluster)3.0版本提供数据分布数据分区顺序分区: 数据分散度易倾斜 例如: BigTable HBase哈希分区(例如节点...原创 2019-09-16 22:30:09 · 162 阅读 · 0 评论 -
redis-other
慢查询生命周期发送命令排队(单线程特性)执行命令(慢查询发生的阶段, 客户端超时不一定是慢查询导致的.慢查询只是一个因素)返回执行结果两个配置slowlog-max-len default =128慢查询队列是先进先出的, 固定长度, 保存在内存内slowlog-log-slower-than default = 1000慢查询阈值(单位:微妙) , =0 记...原创 2019-09-16 22:28:49 · 185 阅读 · 0 评论 -
redis-client
Jedis原创 2019-09-16 22:28:39 · 223 阅读 · 0 评论 -
redis-api
Redis API的使用和理解通用命令keys 查看所有的key, 可以使用通配符 */[a-b], 一般不在生产环境中使用. 由于单线程特性, 该命令会造成阻塞 代替: 热备从节点(在备机上使用)/scan O(n)的时间复杂度dbsize 统计键值对数量exists key 判断是否存在, 返回1 存在, 返回0 不存在del key 删除指定的key,可以同时删...原创 2019-09-16 22:28:24 · 109 阅读 · 0 评论 -
redis-安装
启动简单启动 redis-server, 使用默认配置动态参数启动 redis-server --port 6379配置文件方式 redis-server --config(生产环境)修改默认配置修改端口号是否守护进程指定工作目录 dirlogfile查看配置,不展示注释,不显示空行查看cat redis-6381.conf| grep -v “#” | grep -v ...原创 2019-09-16 22:28:12 · 78 阅读 · 0 评论 -
redis-feature
速度快内存存储持久化持久化到硬盘,防止异常丢失数据数据结构丰富位图: BitMapsHyperLogLog: 超小内存唯一值计数GEO: 地里信息定位多语言的客户端只关注java发布订阅,lua脚本,pipline简单单线程模型主从复制高可用sentinal,分布式cluster使用场景缓存计数器消息队列排行榜...原创 2019-09-16 22:27:59 · 137 阅读 · 0 评论 -
Redis中关于密码的小细节.
总结一下最近在学习Redis时遇到的关于密码的一些小坑.背景:在学习redis时,观看了一些网站上的学习视频,关于密码这一块,讲师也是随口一提,不过感觉老师说的也有道理,作为一个服务器缓存数据库,关于安全方面的防御,应该在系统上都已经做够了功课,redis的重点是高效的存取数据,所以在redis中设置密码只是官方给的一个功能,但是应该用到的很少.笔者就是在学习过程中设置了密码,然后按照老师原创 2017-09-11 10:38:40 · 2084 阅读 · 0 评论 -
redis-sentinel关键配置解析
哨兵配置项port 5000 端口bind 192.168.31.187 本机ipdir /var/sentinal/5000 工作目录sentinel monitor mymaster 192.168.31.187 6379 2 //master地址sentinel down-after-milliseconds mymaster 30000sentinel failover-...原创 2019-09-23 23:01:46 · 305 阅读 · 0 评论