- 背景
前一章介绍了Memcached安装,此次介绍NoSQL另一款明星产品—–>redis。
许多Web 应用程序都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大,访问的集中,就会出现REBMS的负担加重,数据库响应恶化,网站显示延迟等重大影响。Memcached是高性能的分布式内存缓存服务器。一般的使用目的是通过缓存数据库查询结果,减少数据库的访问次数,以提高动态Web 应用的速度、提高扩展性.
- redis比memcached优势
丰富的数据类型: redis支持二进制的string list hashe set zset五大基础数据类型存储.
原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并后的原子性执行.
消息订阅: redis支持publish/subscribe。
持久化存储数据: redis支持Aof与RDB两种数据持久化支持.
2. 环境
CentOS 6.8源码安装Redis
- 安装(/usr/local/src)
下载: wget http://download.redis.io/releases/redis-3.2.8.tar.gz
解压: tar zxvf redis-3.2.8.tar.gz
进入目录: cd redis-3.2.8
编译并指定安装目录: make PREFIX=/usr/local/redis-3.2.8 install
创建软链接: ln -s /usr/local/redis-3.2.8 /usr/local/redis
- 配置文件(当前还在redis源码目录[/usr/local/src/redis-3.2.8]内)
cp redis.conf /etc/redis.conf
编辑
[root@redis-server ~]# vim /etc/redis.conf
daemonize no ==> daemonize yes (设置redis为后台daemon进程,在最后面)
创建redis用户
[root@redis-server ~]# useradd -r -s /sbin/nologin -M redis创建启动脚本
[root@redis-server ~]#vim /etc/init.d/redis
!/bin/sh
redis init file for starting up the redis daemon
chkconfig: - 20 80
description: Starts and stops the redis daemon.
Source function library.
!/bin/sh
redis init file for starting up the redis daemon
chkconfig: - 20 80
description: Starts and stops the redis daemon.
Source function library.
. /etc/rc.d/init.d/functions
name=”redis-server”
exec=”/usr/local/redis/bin/$name”
pidfile=”/var/run/redis/redis.pid”
REDIS_CONFIG=”/etc/redis.conf”
[ -e /etc/sysconfig/redis ] && . /etc/sysconfig/redis
lockfile=/var/lock/subsys/redis
start() {
[ -f
REDISCONFIG]||exit6[−x
exec ] || exit 5
echo -n
"Starting
name: ”
daemon –user
REDISUSER−redis"
exec
REDISCONFIG”retval=
?
echo
[ retval -eq 0 ] && touchlockfile
return $retval
}
stop() {
echo -n
"Stopping
name: ”
killproc -p
pidfile
name
retval=
?echo[
retval -eq 0 ] && rm -f
lockfilereturn
retval
}
restart() {
stop
start
}
reload() {
false
}
rh_status() {
status -p
pidfile
name
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
case “1” in
start)
rh_status_q && exit 01
;;
stop)
rh_status_q || exit 0
1;;restart)
1
;;
reload)
rh_status_q || exit 7
1;;force−reload)forcereload;;status)rhstatus;;condrestart|try−restart)rhstatusq||exit0restart;;∗)echo
"Usage:
0start|stop|status|restart|condrestart|try−restart”exit2esacexit
?
修改脚本文件权限
[root@redis-server ~]# chmod 755 /etc/init.d/redis添加进service服务管理并设置开机启动
[root@redis-server ~]# chkconfig –add redis
[root@redis-server ~]# chkconfig redis onredis服务测试
service redis start
CentOS 6.8源码安装Redis
- 连接测试(通过自带redis-cli命令连接测试)
[root@redis-server ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379
CentOS 6.8源码安装Redis
连接测试成功