redis使用规范
redis使用规范
EveryDayNew 发表于2年前
redis使用规范
  • 发表于 2年前
  • 阅读 1494
  • 收藏 11
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: 说明: 1、Redis缓存是公共资源。一个系统的不合理使用,会导致公共资源不可用,会引发雪崩效应,各个系统瘫痪。损失不可估量。 2、Redis缓存崩溃之后,想要恢复正常数据,删除错误数据,很难操作。因此,在使用时,就需要认真、小心、负责,防患于未然。

1、设置超时时间[最重要]

目前有许多key没有设置超时时间,导致一直占用内存。

需要增加操作步骤,设置超时时间。时间尽量短。

某些业务要求key长期有效。可以在每次写入时,都设置超时时间,让超时时间顺延。

短的超时时间,如 5分钟,10分钟,30分钟,1小时,3小时,1天等

长的超时时间,如 7天,15天,1个月,3个月,6个月等

示例代码如下:

// 设置有效期
			jedis.expire(cacheMapName, ZLConstant.SECONDS_1_MONTH);

// 如果存在key
			if (jedis.exists(mapName)) {
				existMap = true;
			}
			// 写入登录信息缓存
			jedis.hset(mapName, cacheKey, userJson);
			// 如果是新建的,就设置超时时间
			if (!existMap) {
				// 设置超时时间
				jedis.expire(mapName, expireSeconds);
			}

2、高频和低频分离

高频数据存入Redis缓存,低频数据不要存入Redis缓存。

高频数据是经常访问的数据,在这里做好压力缓冲就行了。对于大量数据和列表数据尤其适用。

如,某商店的所有评价数据,总共有5000条之多,最近的30条(高频)可能是最常访问的,可以存入Redis缓存,其他的数据(低频)都不需要存缓存。

3、合理使用list,map,set等集合结构

结合具体业务,设置合理的数据结构,找出更好的选择。

集合结构还可以减少key的个数。

4、尽量使用字符串格式

可视化,便于查看和管理。

特别是在大批量数据的时候,效果明显。

5、合理设置key的格式

多系统在共用缓存,需要key唯一。

合适的key,便于查看,统计,排错。

key的格式,如:系统名+业务名+业务数据+其他

6、减少key的个数

为了过期管理,合理减少key。

比如,把key-value数据聚合,放到map、list里面。一个集合结构里面就可以包含很多个小数据。

7、精细化运营

之前的使用方法一直是粗放式。业务量小时,没问题;业务量大了,就各种问题。

为了未来系统稳定,为了每个人的职业成长,需要学会精细化运营。

深入分析业务流程,合理安排数据结构,合理使用公共资源,优化读写效率,提高系统抗风险能力。


共有 人打赏支持
粉丝 5
博文 25
码字总数 31262
×
EveryDayNew
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: