Redis 常规知识点整理

CoffeyOliver 发布于11天前 阅读42次
0 条评论

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 的配置只会到配置文件中看,但其实这个配置已经和配置文件的有区别了,这时候别人再来调试就很麻烦了。所以一般都是用在测试环境进行调试。

查看原文: Redis 常规知识点整理

  • bigdog
需要 登录 后回复方可回复, 如果你还没有账号你可以 注册 一个帐号。