Redis--------基于centos6源码安装

系统 Linux Redis
许多Web应用程序都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大,访问的集中,就会出现REBMS的负担加重,数据库响应恶化,网站显示延迟等重大影响。Memcached是高性能的分布式内存缓存服务器。一般的使用目的是通过缓存数据库查询结果,减少数据库的访问次数,以提高动态Web 应用的速度、提高扩展性.

【引自asd1123509133的博客】1. 背景

前一章介绍了memecached安装,此次介绍NoSQL另一款明星产品----->redis.

许多Web 应用程序都将数据保存到RDBMS中,应用服务器从中读取数据并在浏览器中显示。但随着数据量的增大,访问的集中,就会出现REBMS的负担加重,数据库响应恶化,网站显示延迟等重大影响。Memcached是高性能的分布式内存缓存服务器。一般的使用目的是通过缓存数据库查询结果,减少数据库的访问次数,以提高动态Web 应用的速度、提高扩展性.

* redis比memcached优势

  • 丰富的数据类型: redis支持二进制的string list hashe set zset五大基础数据类型存储.
  • 原子性:redis的所有操作都是原子性的,同时redis还支持对几个操作全并后的原子性执行.
  • 消息订阅: redis支持publish/subscribe。
  • 持久化存储数据: redis支持Aof与RDB两种数据持久化支持.

2. 环境 

 

 

环境 

3 安装(/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

4. 配置文件(当前还在redis源码目录[/usr/local/src/redis-3.2.8]内)

cp redis.conf /etc/redis.conf

编辑/etc/redis.conf

daemonize no ==> daemonize yes (设置redis为后台daemon进程)

5. 创建redis用户

  1. [root@redis-server ~]# useradd -r -s /sbin/nologin -M redis 

6. 创建启动脚本/etc/init.d/redis

  1. #!/bin/sh 
  2. # redis        init file for starting up the redis daemon 
  3. # chkconfig:   - 20 80 
  4. # description: Starts and stops the redis daemon. 
  5.   
  6. # Source function library. 
  7. #!/bin/sh 
  8. # redis        init file for starting up the redis daemon 
  9. # chkconfig:   - 20 80 
  10. # description: Starts and stops the redis daemon. 
  11.   
  12. # Source function library. 
  13. . /etc/rc.d/init.d/functions 
  14.   
  15. name="redis-server" 
  16. exec="/usr/local/redis/bin/$name" 
  17. pidfile="/var/run/redis/redis.pid" 
  18. REDIS_CONFIG="/etc/redis.conf" 
  19.   
  20. [ -e /etc/sysconfig/redis ] && . /etc/sysconfig/redis 
  21.   
  22. lockfile=/var/lock/subsys/redis 
  23.   
  24. start() { 
  25.     [ -f $REDIS_CONFIG ] || exit 6 
  26.     [ -x $exec ] || exit 5 
  27.     echo -n $"Starting $name: " 
  28.     daemon --user ${REDIS_USER-redis} "$exec $REDIS_CONFIG" 
  29.     retval=$? 
  30.     echo 
  31.     [ $retval -eq 0 ] && touch $lockfile 
  32.     return $retval 
  33.   
  34. stop() { 
  35.     echo -n $"Stopping $name: " 
  36.     killproc -p $pidfile $name 
  37.     retval=$? 
  38.     echo 
  39.     [ $retval -eq 0 ] && rm -f $lockfile 
  40.     return $retval 
  41.   
  42. restart() { 
  43.     stop 
  44.     start 
  45.   
  46. reload() { 
  47.     false 
  48.   
  49. rh_status() { 
  50.     status -p $pidfile $name 
  51.   
  52. rh_status_q() { 
  53.     rh_status >/dev/null 2>&1 
  54.   
  55.   
  56. case "$1" in 
  57.     start) 
  58.         rh_status_q && exit 0 
  59.         $1 
  60.         ;; 
  61.     stop) 
  62.         rh_status_q || exit 0 
  63.         $1 
  64.         ;; 
  65.     restart) 
  66.         $1 
  67.         ;; 
  68.     reload) 
  69.         rh_status_q || exit 7 
  70.         $1 
  71.         ;; 
  72.     force-reload) 
  73.         force_reload 
  74.         ;; 
  75.     status) 
  76.         rh_status 
  77.         ;; 
  78.     condrestart|try-restart) 
  79.         rh_status_q || exit 0 
  80.         restart 
  81.         ;; 
  82.     *) 
  83.         echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart}" 
  84.         exit 2 
  85. esac 
  86. exit $? 

 

7. 修改脚本文件权限

  1. [root@redis-server ~]# chmod 755 /etc/init.d/redis 

8. 添加进service服务管理并设置开机启动

  1. [root@redis-server ~]# chkconfig --add redis 
  2. [root@redis-server ~]# chkconfig redis on  

9. redis服务测试

  1. service redis start  

 

 

 

10. 连接测试(通过自带redis-cli命令连接测试)

  1. [root@redis-server ~]# /usr/local/redis/bin/redis-cli -h 127.0.0.1 -p 6379  

 

 

 

连接测试成功

11. 总结

以需求驱动技术,技术本身没有优略之分,只有业务之分。

责任编辑:庞桂玉 来源: 51CTO博客
相关推荐

2017-03-20 16:12:41

opensslcentosnginx

2014-07-30 10:35:34

Linux系统启动

2014-08-05 16:30:12

CentOS6LAMP

2021-04-13 15:09:16

CentOS6EOL项目

2011-05-10 13:54:36

CentOS 6

2010-02-23 13:41:00

2013-04-10 15:12:03

MySQL 5.6

2014-11-28 11:20:54

LEMPNginxMariaDB

2011-08-15 14:05:42

CentOS 6

2021-01-04 08:15:16

CentOS 7Python3.9Python

2011-07-27 10:06:53

RHEL 6Oracle 10g

2015-05-25 19:34:06

KickstartCentOS

2012-08-08 10:10:30

CentOS 6操作系统

2013-12-04 14:45:22

2022-12-06 08:44:20

2010-04-06 10:00:52

CentOS系统

2016-12-27 18:54:19

2011-05-20 10:55:21

CentOS 6RHEL 6.1

2011-09-30 10:56:20

Centos 6

2015-12-21 13:19:23

CentosRHEL 6.XWetty
点赞
收藏

51CTO技术栈公众号