`
redis
  • 浏览: 26576 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

使用Redis的五个注意事项

阅读更多

下面内容来源于Quora上的一个提问,问题是使用Redis需要避免的五个问题。而回答中超出了五个问题的范畴,描述了五个使用Redis的注意事项。如果你在使用或者考虑使用Redis,可能你可以学习一下下面的一些建议,避免一下提到的问题。

1.使用key值前缀来作命名空间

虽然说Redis支持多个数据库(默认32个,可以配置更多),但是除了默认的0号库以外,其它的都需要通过一个额外请求才能使用。所以用前缀作为命名空间可能会更明智一点。

另外,在使用前缀作为命名空间区隔不同key的时候,最好在程序中使用全局配置来实现,直接在代码里写前缀的做法要严格避免,这样可维护性实在太差了。

2.创建一个类似 ”registry” 的key用于标记key使用情况

为了更好的管理你的key值的使用,比如哪一类key值是属于哪个业务的,你通常会在内部wiki或者什么地方创建一个文档,通过查询这个文档,我们能够知道Redis中的key都是什么作用。

与之结合,一个推荐的做法是,在Redis里面保存一个registry值,这个值的名字可以类似于 __key_registry__ 这样的,这个key对应的value就是你文档的位置,这样我们在使用Redis的时候,就能通过直接查询这个值获取到当前Redis的使用情况了。

3.注意垃圾回收

Redis是一个提供持久化功能的内存数据库,如果你不指定上面值的过期时间,并且也不进行定期的清理工作,那么你的Redis内存占用会越来越大,当有一天它超过了系统可用内存,那么swap上场,离性能陡降的时间就不远了。所以在Redis中保存数据时,一定要预先考虑好数据的生命周期,这有很多方法可以实现。

比如你可以采用Redis自带的过期时间为你的数据设定过期时间。但是自动过期有一个问题,很有可能导致你还有大量内存可用时,就让key过期去释放内存,或者是内存已经不足了key还没有过期。

如果你想更精准的控制你的数据过期,你可以用一个ZSET来维护你的数据更新程度,你可以用时间戳作为score值,每次更新操作时更新一下score,这样你就得到了一个按更新时间排序序列串,你可以轻松地找到最老的数据,并且从最老的数据开始进行删除,一直删除到你的空间足够为止。

4.设计好你的Sharding机制

Redis目前并不支持Sharding,但是当你的数据量超过单机内存时,你不得不考虑Sharding的事(注意:Slave不是用来做Sharding操作的,只是数据的一个备份和读写分离而已)。

所以你可能需要考虑好数据量大了后的分片问题,比如你可以在只有一台机器的时候就在程序上设定一致性hash机制,虽然刚开始所有数据都hash到一台机器,但是当你机器越加越多的时候,你就只需要迁移少量的数据就能完成了。

5.不要有个锤子看哪都是钉子

当你使用Redis构建你的服务的时候,一定要记住,你只是找了一个合适的工具来实现你需要的功能。而不是说你在用Redis构建一个服务,这是很不同的,你把Redis当作你很多工具中的一个,只在合适使用的时候再使用它,在不合适的时候选择其它的方法。

来源:www.quora.com

12
11
分享到:
评论

相关推荐

    redis2json:以JSON格式导出Redis数据

    注意事项和注意事项u()中的Unicode支持仅适用于Python2.x。 拉赞赏! 除了开发数据库以外,redis()。keys()真的很难使用! 对于生产,请使用重复扫描。 尽管通过并行化可以提高速度,但是您不能并行编写JSON。...

    Redis 7.0.4 x64位 windows 系统 安装包 Redis7.0.4.zip

    使用步骤注意事项: 一、修改Redis的持久化数据库文件dump.rdb保存路径,绝对路径的方式:查找到行 dir D:\Redis7.0.4\bin\RedisData 如果Redis7.0.4.zip压缩包直接解压在D盘根目录下,不需要修改,如果放在其它盘...

    Window搭建Redis

    2.3Redis安装与注意事项 1)我下载的到本地的文件是redis-windows-master 打开这个文件D:\Server\redis\redis-windows-master\downloads\redis64-2.6.12.1.zip这个目录下面有 redis.conf配置是window下使用启动...

    redis下载(redis手册+redis.conf文件+windows服务+php_redis扩展+安装方法,绝对好用)

    这个是绝对超值的,本人收集了在windows下架设redis数据库的所需软件,以及在实践中应该注意的事项,拿出来在这里和大家分享: 软件包括: redis-2.6.12 包括了redis的32位和64位版本。 redis.conf 这是redis的...

    Redis.README.docx

    redis安装帮助文档,根据帮助文档可以知道redis安装使用的所有注意事项

    搭建RedisCluster(Redis集群)

    详细描述了搭建Redis集群的的步骤及注意事项,并给出详细的命令。

    C#中如何使用redis

    redis 是一个非关系型高性能的key-value数据库。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set –有序集合)和hash(哈希类型)。这些数据类型都...

    redis安装使用笔记

    redis安装,部署,使用笔记,内涵详细介绍,步骤,以及使用时的注意事项

    Spring Boot中配置Redis的讲义最全讲义

    目录: 简介 1.1 Redis概述 1.2 Redis在Spring Boot中的应用 配置Redis依赖 2.1 添加Maven依赖 2.2 配置application.properties 编写Redis配置类 3.1 使用@Configuration注解 ...最佳实践与注意事项

    Redis集群部署 ---CentOS

    在CentOS 下集群部署Redis,以及注意事项,安全是在同一个服务器部署6个Redis节点

    redis4.0.8

    redis-4.0.8安装包,文档中有安装过程和注意事项、安装教程。

    redis-6.0.9.tar.gz

    redis-6.0.9.tar.gz-带安装步骤和注意事项

    PHP使用Redis长连接的方法详解

    主要介绍了PHP使用Redis长连接的方法,结合实例形式详细分析php操作redis长连接的使用方法及相关注意事项,需要的朋友可以参考下

    Redis集群部署_在Windows下安装

    Redis 介绍、安装部署环境、必备软件、详细安装步骤、注意事项。

    Redis-7.0.x for Windows/Linux

    使用步骤注意事项: 一、修改Redis的持久化数据库文件dump.rdb保存路径,绝对路径的方式:查找到行 dir D:\Redis7.0.4\bin\RedisData 如果Redis7.0.4.zip压缩包直接解压在D盘根目录下,不需要修改,如果放在其它盘...

    Redis新版本(v6.0及之后)安装配置图文教程(2).pdf

    标签:redis linux 上文已介绍了Redis的安装过程, 接下去介绍Redis的配置与使用。 Redis官网推出新版本(v6.0及之后)的应用,其的安装与配置...下文完整地记录了新版本的安装与配置的要点,以及安装过程的注意事项。

    Thinkphp 3.2框架使用Redis的方法详解

    主要介绍了Thinkphp 3.2框架使用Redis的方法,结合实例形式详细分析了thinkPHP3.2操作redis的常用方法、相关注意事项与问题解决方法,需要的朋友可以参考下

    掌握Redis:从安装到高效数据处理的核心原理与技巧

    对于高级用户,文档提供了几个重要的Redis命令,如keys和scan,以及它们在大数据量环境下的使用注意事项。这些命令对于管理和优化Redis数据库至关重要。整体而言,本文档为想要深入了解Redis核心数据结构和高性能...

    分布式锁-分析产生的原因,推导解决方案的原理及注意事项,适用于redis/hbase/zookpeer/etcd/mysql等

    分布式锁-分析产生的原因,推导解决方案的原理及注意事项,适用于redis/hbase/zookpeer/etcd/mysql等,简要分析redisson原理图 b站视频地址:https://www.bilibili.com/video/BV1dg4y1F7C4

    php框架CodeIgniter使用redis的方法分析

    主要介绍了php框架CodeIgniter使用redis的方法,结合实例形式分析了redis的安装、设置及CodeIgniter使用redis的相关操作技巧与注意事项,需要的朋友可以参考下

Global site tag (gtag.js) - Google Analytics