人,一定要靠自己 人,一定要靠自己

没有人会关心你付出过多少努力,撑得累不累,摔得痛不痛,他们只会看你最后站在什么位置,然后羡慕或者鄙夷

目录
redis本地缓存优化之socket连接
/  

redis本地缓存优化之socket连接

原文

redis本地缓存优化之socket连接

背景

在我们日益复杂的系统中,总会有很多对时效性要求不大或者更新频率很低的数据,为了减少网络和计算耗时,我们会将计算结果缓存起来来提高系统性能。

解决方案

提到缓存,我们很容易想到redismemcache等内存缓存工具,鉴于redis支持跟多的数据结构和持久化等特性,我会更倾向于前者。这样在应用机器上本地部署redis服务器就可以用来缓存前面提到的可缓存数据。

如何进一步优化

一般情况下,我们都是以tcp的连接方式使用redis,这也是其默认支持的方式,但是这样的话即使是在本机,也会产生网络请求(想想三次握手、四次挥手。。。),对性能是有一定损耗的,联想到php-fpmnginx可以使用tcpunix-socket方式,那redis是否也可以呢?经过了解,是可以的!所以我们这里也改成unix-socket方式。

如何配置

在redis.conf文件中取消注释两条语句:

unixsocket /tmp/redis.sock 
unixsocketperm 700
复制代码

然后运行redis,创建redis连接时用redis.new (:path =>"/tmp/redis.sock"),即可

性能对比

SET和GET操作提升 60%左右。