![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
redis
文章平均质量分 88
weixin_44149903
写文档只是为了自己学习总结
展开
-
redis(四)实战篇
如何手写redis客户端知道结构set100万数据只需要3秒钟,如何做到‘pipeline,批量情况才使用。实时性要求不高的场景使用pipeline两行代码调用分布式锁是要实时一致性还是最终一致性不更新数据,先删除再新增才快。延时时间根据业务来设置,延时双删解决先删缓存,再删数据库把key操作了多少次记录下来。放到代理层,监听,然后统计。但是会影响性能服务端,ELK有个packetbeat,抓包,抓到redis命令数据,然后发现热点数据缓存雪崩:大量热点数据同时过期,(大家过期时间一样,所以原创 2022-06-15 15:41:20 · 77 阅读 · 0 评论 -
redis(三)分布式篇
上篇重点持久化持久化机制rdb(记录快照)配置多少秒中多少key被修改,aof(记录操作命令)子进程fork会快照,不会阻塞,所以rdb快哨兵模式,监控,自动选取主节点哨兵发送命令,等待redis响应,监控多个redis哨兵投票(算法),进行故障转移,切换成功后,发布订阅配置哨兵配置文件sentinel monitor myredis 127.0.0.1 6379 11代表主机宕机开始投票客户端配置哨兵ip和端口,不再配置redis集群的了。通过30000响应时间判断是否响应,没有响应原创 2022-06-15 09:24:26 · 117 阅读 · 0 评论 -
幂等性解决方案
幂等性解决方案1.防重表数据库建立唯一性索引,可以保证最终插入数据库的只有一条数据(比如订单表对订单号进行唯一索引,所有重复提交可能产生同一个订单号的都会被拆除。当然,订单号要按你自己的设定走,一般订单号设计会是时间戳加迭代。那么如果是这样,创建仍然不能保证幂等,具体根据业务需求来判定建立的唯一索引位置)2.token令牌机制分为两个阶段,获取token和使用token。每次接口请求前先获取一个token,然后再下次请求的时候在请求的header体中加上这个token,后台进行验证,如果验证通过删除原创 2020-12-22 01:35:58 · 363 阅读 · 1 评论 -
Redis(二)原理
Java中操作使用jedisRedis高级特性,发布订阅、事务、Lua脚本底层工作原理,单线程工作机制、内存回收、持久化发布订阅模式publish subscribeunsubscribe这个模式了解一下,专业还是用mq的Redis事务multi开启事务,exec执行事务,discard取消事务。watch监视变化Lua脚本c语言编写的,为什么用Lua?好处,1.多个命令一次发送执行,2.原子性3.复杂命令放到文件写入文件中通过ip访问次数限制Redis为什么这原创 2020-08-25 16:19:01 · 196 阅读 · 0 评论 -
Redis(一)基础篇
数据放入内存中,提升效率。并有持久化功能为什么要把数据库放入内存加快吞吐量,读取快redis丰富的数据类型,分布式,持久化,内存淘汰,过期策略,主从复制,哨兵机制redis几种数据类型有八种,最常用的StringString存储类型,int,float,stringsetnx只有key不存在才能设置成功,可以用做分布式锁expire设置过期时间提供递增递减操作批量获取,mget追加 appendembstr连续存储,编码只读,只要修改,会转化成raw再进行修改,即使没到44原创 2020-08-24 15:46:49 · 88 阅读 · 0 评论