资讯专栏INFORMATION COLUMN

Redis 常规知识点整理

sunny5541 / 1291人阅读

摘要:常规的知识点整理将持续更新不仅仅做缓存使用,某种场景下可以当做数据库使用,替换,因为是可以持久化的,所以可以直接和进行交互而则不能当数据库使用,只能作缓存使用,不能替换。的实际处理速度完全依靠主进程的执行效率。

redis 常规的知识点整理---将持续更新...

1.redis 不仅仅做缓存使用,某种场景下可以当做数据库使用,替换 mysql,因为 Redis 是可以持久化的,所以可以直接和 disk 进行交互;而 memcached 则不能当数据库使用,只能作缓存使用,不能替换 mysql。


2.仅从缓存这个角度来说,memcached 要比 redis 好很多,因为它的性能更高(如果想了解,就自行找资料了解其优秀特性,比如在多核处理器上,memcached 效率很高,而 redis 是单进程的,相对效率低一点),memcached 比 redis 少的是功能,从功能齐全的方面来说,当然 redis 要更强点。所以在选择的时候视具体情况来定。


3.本地启动 reids 实例的时候,连接上 redis 实例之后,如果想要关闭 redis,那么请记住不要暴力关闭,比如 kill -9 或者直接关闭窗口的方式去关闭 redis 服务。因为 redis 是做数据服务的,如果暴力关闭,可能会导致 redis 丢失数据。


4.Redis 的实际处理速度完全依靠主进程的执行效率。假如同时有多个客户端并发访问服务器,则服务器处理能力在一定情况下将会下降。假如我们要提高服务器的并发能力,那么可以采用在单台服务器上部署多个 redis 进程的方式。(注意: 这种方式表面上是提高了并发能力,但是实际上隐藏着一些问题,这些 redis 进程会竞争 cpu 资源的,如果在 redis 里面执行了一些阻塞性的或者很耗 cpu 的操作的时候,那么此实例就会抢占 cpu 资源比较多,导致其它 redis 实例的访问能力都会降低。因此: 这种方式使用的时候一定要注意,不要有一些对 cpu 资源抢占比较厉害的命令或操作,如果有的话,还是建议一台机器上安装一个 redis 实例,保险一点)


5.redis 是单进程的,所以不用担心并发问题。所以可以利用 redis 的 incr 自增特性生成流水号。


6.redis 的调优就需要对 redis 的配置有清晰的认识,通过各种参数来调优。但是请注意:使用 config 命令,在测试环境进行调优的话还是很方便的,但是在生产环境最好还是不要去使用这个命令,因为一般都是在测试环境调好参数过后,这个参数就固定了,放在配置文件中,在把这些固定的参数放到生产环境的一个过程。假如随便的修改了生产环境的参数之后,用着挺好用,但是并没有记录本次操作,别人也不知道,别人看 redis 的配置只会到配置文件中看,但其实这个配置已经和配置文件的有区别了,这时候别人再来调试就很麻烦了。所以一般都是用在测试环境进行调试。


7.redis 的持久化,在实际生产环境中,会优先选中开启 AOF 机制,但是在 reids master 上面都会运行主进程,会关掉 RDB 和 AOF ,一般就是在 slave 上开启 AOF 持久化方式,然后关掉 RDB 方式,因为把它开着也会影响性能的。如果 redis 是 master->slave->slave 这种链式模式,那么我们可以在 slave 上一个开 AOF,一个开 RDB 也可以,也是保证数据安全的一种方式。不过一般都优先选择 AOF 这种方式。


文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/61927.html

相关文章

  • PHP程序员学习路线

    摘要:第一阶段基础阶段基础程序员重点把搞熟练核心是安装配置基本操作目标能够完成基本的系统安装,简单配置维护能够做基本的简单系统的开发能够在中型系统中支持某个功能模块的开发。本项不做重点学习,除非对前端有兴趣。 第一阶段:基础阶段(基础PHP程序员) 重点:把LNMP搞熟练(核心是安装配置基本操作) 目标:能够完成基本的LNMP系统安装,简单配置维护;能够做基本的简单系统的PHP开发;能够在P...

    genedna 评论0 收藏0
  • Java基础知识整理之操作Redis(一)

    摘要:是一个由写的存储系统。是一个开源的使用语言编写遵守协议支持网络可基于内存亦可持久化的日志型数据库,并提供多种语言的。它通常被称为数据结构服务器,因为值可以是字符串哈希列表集合和有序集合等类型。 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵...

    honhon 评论0 收藏0
  • Java基础知识整理之操作Redis(一)

    摘要:是一个由写的存储系统。是一个开源的使用语言编写遵守协议支持网络可基于内存亦可持久化的日志型数据库,并提供多种语言的。它通常被称为数据结构服务器,因为值可以是字符串哈希列表集合和有序集合等类型。 REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵...

    2shou 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<