本文最后更新于 2877 天前,其中的信息可能已经有所发展或是发生改变。
介绍
Redis-Servr 是可持久化的日志型、Key-Value数据库,目前被广泛应用于缓存领域。阿里云的ApsaraCache 也是基于 Redis 开发的。
Redis 的所有数据都存储在内存中,同时也提供对这些数据的持久化。因此将网站需要向数据库获取的内容缓存到Redis就可以实现储存到内存的效果,实现性能提升。
同时如果没有外网使用的需求,我们还可以让 Redis 以 Unix Socket 的方式运行,以避免 TCP/IP 的性能瓶颈,在高访问场景实现 25% 的性能提升。
安装
适用系统:Ubuntu、Debian
一、安装 Redis
apt-get install redis-server
Ubuntu系统如果追求新版本,还可以使用 PPA 源:
add-apt-repository ppa:chris-lea/redis-server
apt update
apt install redis-server
Debian系统如果追求新版本,还可以使用 DotDeb 源:
安装方法:https://www.dotdeb.org/instructions/
二、查看目前 Redis 运行在那个用户上
[email protected]:~# sudo ps aux | grep redis
sudo: unable to resolve host www.mf8.biz
redis 29409 0.0 0.8 37224 8796 ? Ssl 10:43 0:00 /usr/bin/redis-server 127.0.0.1:6379
可见 Redis-Server 运行在 redis
上
三、添加用户组
usermod -g www-data redis
四、创建 unix socket 所在文件夹
mkdir -p /var/run/redis/
五、赋予权限
chown -R redis:www-data /var/run/redis
六、修改配置文件 /etc/redis/redis.conf
将 unixsocket
和 unixsocketperm
前的 #
去掉,并将 unixsocketperm
的值由 700
改为 777
,否则将不能清理缓存
# Specify the path for the Unix socket that will be used to listen for
# incoming connections. There is no default, so Redis will not listen
# on a unix socket when not specified.
#
unixsocket /var/run/redis/redis.sock
unixsocketperm 777
七、重启
service redis-server restart
八、查看是否正常运行,通过 ls -lh
命令查看会返回如下结果:
[email protected]:~# ls -lh /var/run/redis
total 4.0K
-rw-r--r-- 1 redis www-data 6 Mar 14 10:56 redis-server.pid
srwx------ 1 redis www-data 0 Mar 14 10:56 redis.sock
[email protected]:~#
nginx helper里面要怎么设置呢?
nginx helper依旧只能走tcp,软件不支持socket协议