在咱们日益复杂的系统中,总会有不少对时效性要求不大或者更新频率很低的数据,为了减小网络和计算耗时,咱们会将计算结果缓存起来来提升系统性能。php
提到缓存,咱们很容易想到redis
、memcache
等内存缓存工具,鉴于redis
支持跟多的数据结构和持久化等特性,我会更倾向于前者。这样在应用机器上本地部署redis
服务器就能够用来缓存前面提到的可缓存数据。nginx
通常状况下,咱们都是以tcp
的链接方式使用redis
,这也是其默认支持的方式,可是这样的话即便是在本机,也会产生网络请求(想一想三次握手、四次挥手。。。),对性能是有必定损耗的,联想到php-fpm
跟nginx
可使用tcp
和unix-socket
方式,那redis
是否也能够呢?通过了解,是能够的!因此咱们这里也改为unix-socket
方式。redis
在redis.conf文件中取消注释两条语句:缓存
unixsocket /tmp/redis.sock
unixsocketperm 700
复制代码
而后运行redis,建立redis链接时用redis.new (:path =>"/tmp/redis.sock"),便可bash
SET和GET操做提高 60%左右。服务器