文档章节

redis使用规范

EveryDayNew
 EveryDayNew
发布于 2015/12/29 11:18
字数 703
阅读 1547
收藏 11
点赞 0
评论 0

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、精细化运营

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

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

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


© 著作权归作者所有

共有 人打赏支持
EveryDayNew
粉丝 5
博文 25
码字总数 31409
作品 0
杭州
程序员
phalapi-进阶篇7(使用缓存以及用redis拓展解决实际问题)

phalapi-进阶篇7(使用缓存以及用redis拓展解决实际问题) 先在这里感谢phalapi框架创始人@dogstar,为我们提供了这样一个优秀的开源框架. 当我们在开发一个项目时,我们可能会遇到很多问题,比如...

喵了_个咪 ⋅ 2015/12/12 ⋅ 0

devops| redis 数据量暴涨进行数据清理实战

date: 2018-4-17 21:57:44 title: devops| redis 数据量暴涨进行数据清理实战 description: redis 作为程序员的 「瑞士军刀」, 在现有业务中扮演着重要的角色. 为了避免触雷, 「保卫世界和平...

daydaygo ⋅ 04/18 ⋅ 0

Redis安全规范----check list

Redis安全规范—-check list. 1.信任的内网运行,尽量避免有公网访问 在/etc/redis/redis.conf中配置如下:bind 127.0.0.1 2.绑定redis监听的网络接口 如果服务器有多个IP,可限定redis serve...

Tar0 ⋅ 2017/06/19 ⋅ 0

JavaWeb: Redis存储Session方案

所有支持Servlet规范的容器都自带session管理,于是大多数人都使用接口存放状态信息。事实上, servlet的session会使得应用服务器水平扩展变的非常困难。 使用Servlet Session时的妥协方案 Se...

郁极风 ⋅ 2016/09/02 ⋅ 1

技术分享之redis高级讲义

前言: 有段时间没做技术分享了,这次抽时间给大家分享下redis的高级技巧。 记得两年前在公司做过一场redis的源码实现及设计。 这次想继续这个话题,讲下redis集群的具体实现。 但周边人对这个...

rfyiamcool ⋅ 2017/12/02 ⋅ 0

redis3

前言: 参考文档 Redis官方集群指南:Redis cluster tutorial a“ Redis Redis官方集群规范:Redis Cluster Specification a“ Redis Redis集群指南(中文翻译,紧供参考):集群教程 — Redi...

xiaoxu123123 ⋅ 2017/07/03 ⋅ 0

[个人翻译]Redis 集群教程(上)

[个人翻译]Redis 集群教程(中) [个人翻译]Redis 集群教程(下)     官方原文地址:https://redis.io/topics/cluster-tutorial     水平有限,如果您在阅读过程中发现有翻译的不合理...

lpxxn ⋅ 2016/12/08 ⋅ 0

基于 Swoole 的协程 PHP 开发框架 - IMI

介绍 IMI 是基于 Swoole 开发的协程 PHP 开发框架,拥有常驻内存、协程异步非阻塞IO等优点。 IMI 框架文档丰富,上手容易,致力于让开发者跟使用传统 MVC 框架一样顺手。 IMI 框架底层开发使...

宇润 ⋅ 今天 ⋅ 0

.NET 分布式缓存中间件--XXF.BaseService.DistributedCache

分布式缓存中间件 方便实现缓存的分布式,集群,负载均衡,故障自动转移,并兼容多种缓存存储的分布式缓存中间件。 用于解决分布式架构中的分布式缓存环节。 特点: 代码少,便于扩展。 兼容...

车江毅 ⋅ 2015/12/31 ⋅ 1

刘祥超/meloy

Meloy数据管理平台 Meloy [ˈmelə] 基于PHP7提供ES(Elastic Search)、Redis等数据管理工具框架,可以方便地植入数据相关管理工具。 在线演示 http://demo.meloy.cn/ Meloy命名由来 M 管理(...

刘祥超 ⋅ 2017/05/09 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

常见数据结构(二)-树(二叉树,红黑树,B树)

本文介绍数据结构中几种常见的树:二分查找树,2-3树,红黑树,B树 写在前面 本文所有图片均截图自coursera上普林斯顿的课程《Algorithms, Part I》中的Slides 相关命题的证明可参考《算法(第...

浮躁的码农 ⋅ 17分钟前 ⋅ 0

android -------- 混淆打包报错 (warning - InnerClass ...)

最近做Android混淆打包遇到一些问题,Android Sdutio 3.1 版本打包的 错误如下: Android studio warning - InnerClass annotations are missing corresponding EnclosingMember annotation......

切切歆语 ⋅ 32分钟前 ⋅ 0

eclipse酷炫大法之设置主题、皮肤

eclipse酷炫大法 目前两款不错的eclipse 1.系统设置 Window->Preferences->General->Appearance 2.Eclipse Marketplace下载【推荐】 Help->Eclipse Marketplace->搜索‘theme’进行安装 比如......

anlve ⋅ 41分钟前 ⋅ 0

vim编辑模式、vim命令模式、vim实践

vim编辑模式 编辑模式用来输入或修改文本内容,编辑模式除了Esc外其他键几乎都是输入 如何进入编辑模式 一般模式输入以下按键,均可进入编辑模式,左下角提示 insert(中文为插入) 字样 i ...

蛋黄Yolks ⋅ 45分钟前 ⋅ 0

大数据入门基础:SSH介绍

什么是ssh 简单说,SSH是一种网络协议,用于计算机之间的加密登录。 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码...

董黎明 ⋅ 今天 ⋅ 0

web3j教程

web3j是一个轻量级、高度模块化、响应式、类型安全的Java和Android类库提供丰富API,用于处理以太坊智能合约及与以太坊网络上的客户端(节点)进行集成。 汇智网最新发布的web3j教程,详细讲解...

汇智网教程 ⋅ 今天 ⋅ 0

谷歌:安全问题机制并不如你想象中安全

腾讯科技讯 5月25日,如今的你或许已经对许多网站所使用的“安全问题机制”习以为常了,但你真的认为包括“你第一个宠物的名字是什么?”这些问题能够保障你的帐户安全吗? 根据谷歌(微博)安...

问题终结者 ⋅ 今天 ⋅ 0

聊聊spring cloud gateway的RedisRateLimiter

序 本文主要研究下spring cloud gateway的RedisRateLimiter GatewayRedisAutoConfiguration spring-cloud-gateway-core-2.0.0.RELEASE-sources.jar!/org/springframework/cloud/gateway/con......

go4it ⋅ 今天 ⋅ 0

169. Majority Element - LeetCode

Question 169. Majority Element Solution 思路:构造一个map存储每个数字出现的次数,然后遍历map返回出现次数大于数组一半的数字. 还有一种思路是:对这个数组排序,次数超过n/2的元素必然在中...

yysue ⋅ 今天 ⋅ 0

NFS

14.1 NFS介绍 NFS是Network File System的缩写 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本 NFS数据传输基于RPC协议,RPC...

派派菠菜 ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部