赞
踩
提示:阅读本文大概需要5分钟,践行本文大概需要整个职业生涯, 因此墙裂建议各位读者关注号主,收藏本文,以备不时之需
目前互联网大厂大量使用redis、pika作为后端缓存、存储,但是存在存储选型不慎重、结构规划不合理、命令使用不规范的现象,继而造成系统性能达 到瓶颈、活动高峰系统可用性下降、dba可运维难度大大增加。所以就有了这份规范,从源头规范redis使用,避免系统运行过程中出现上述 问题。
比如: 当前redis内存暴涨,通过高频key前缀可以轻易的区分出是那个系统的那个模块在频繁操作,快速定位问题。
例如: 不要包含特殊字符
反例: 包含空格、换行、单双引号以及其他转义字符
例如: hgetall、lrange、smembers、zrange、sinter等并非不能使用,但是需要明确N的值。有遍历的需求可以使用hscan、sscan、zscan代替。
禁止线上使用keys、flushall、flushdb、monitor、save、bgsave等,通过redis的rename机制禁掉命令,或者使用scan的方式渐进式处理。
必须采用延时双删策略,具体操作如下:
public void write(String key,Object data){ //写db db.updateData(data); //同步删除缓存 redis.delKey(key); //延时500ms Thread.sleep(500); //再次删除缓存 redis.delKey(key);}
正文end
往期精彩回顾
阿里内网一位p7大佬关于“限流”的分享(仅限小范围传播)
刷完这些题目,成功收割了阿里,美团,字节等大厂offer
后端服务实战之性能优化
聊聊亿级数据下Mysql数据库的分库分表方案
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。