Redis分布式缓存安装和使用--JEESZ
英语文化交流 > 技术博客 > Redis分布式缓存安装和使用--JEESZ
Redis分布式缓存安装和使用--JEESZ
时间:2017-10-12 11:56:24 13385023 分类:技术博客

独 立 缓 存 服 务 器 : Linux CentOS

Redis 版 本 : 3.0

下 面 我 们 针 对 于
Redis安 装 做 下 详 细 的 记 录 :

编 译 和 安 装 所 需 的 包 :
yum install gcc tcl
创 建 安 装 目 录 :
mkdir /usr/local/redis
   
解 压 :
tar -zxvf 3.xx.tar.gz
mv redis-3.xx redis3.0
cd redis3.0
安 装 (使 用  PREFIX 指 定 安 装 目 录 ):
make PREFIX=/usr/local/redis install
安 装 完 成 后 ,可 以 看 到 /usr/local/redis 目 录 下 有 一 个  bin 目 录 ,bin目 录 里 就 是  redis 的 命 令 脚 本 :
redis-benchmark redis-check-aof redis-check-dumpredis-cli redis-server
  
Redis 配 置 成 服 务 :
按 上 面 的 操 作 步 骤 ,Redis 的 启 动 脚 本 为 :/usr/local/src/redis3.0/utils/redis_init_script
将 启 动 脚 本 复 制 到 /etc/rc.d/init.d/目 录 下 ,并 命 名 为  redis
cp /usr/local/src/redis3.0/utils/redis_init_script/etc/rc.d/init.d/redis
编 辑 /etc/rc.d/init.d/redis,修 改 相 关 配 置 ,使 之 能 注 册 变 为 服 务 :
# vi/etc/rc.d/init.d/redis
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"
case "$1" in
 start)
 if [ -f $PIDFILE ]
 then
 echo "$PIDFILE exists, process is already running or crashed"
 else
 echo "Starting Redis server..."
 $EXEC $CONF
 fi
 ;;
 stop)
 if [ ! -f $PIDFILE ]
 then
 echo "$PIDFILE does not exist, process is not running"
 else
 PID=$(cat $PIDFILE)
 echo "Stopping ..."
 $CLIEXEC -p $REDISPORT shutdown
 while [ -x /proc/${PID} ]
 do
 echo "Waiting for Redis to shutdown ..."
 sleep 1
 done
 echo "Redis stopped"
 fi
 ;;
 *)
 echo "Please use start or stop as first argument"
 ;;
esac
查 看 以 上  redis 服 务 脚 本 ,关 注 标 为 橙 色 的 几 个 属 性 ,做 如 下 几 个 修 改 的 安 排 :
(1) 
在 脚 本 的 第 一 行 后 面 添 加 一 行 内 容 如 下 :
     #chkconfig: 2345 80 90
    
提 醒 :假 如 不 添 加 上 面 的 内 容 ,在 注 册 服 务 时 会 提 示 :service redis does not support chkconfig
(2) REDISPORT 
端 口 保 持  6379 不 变 ;(特 别 注 意 :端 口 名 将 与 下 面 的 配 置 文 件 名 有 关 )
(3) EXEC=/usr/local/bin/redis-server 
改 为  EXEC=/usr/local/redis/bin/redis-server
(4) CLIEXEC=/usr/local/bin/redis-cli 
改 为  CLIEXEC=/usr/local/redis/bin/redis-cli
(5) 
配 置 文 件 设 置 :
创 建 redis 配 置 文 件 目 录
mkdir /usr/local/redis/conf
复 制 redis 配 置 文 件 /usr/local/src/redis3.0/redis.conf /usr/local/redis/conf 目 录 并 按 端 口 号 重 命 名 为 6379.conf
cp /usr/local/src/redis3.0/redis.conf/usr/local/redis/conf/6379.conf
做 了 以 上 安 排 后 ,再 对  CONF 属 性 作 如 下 调 整 :
CONF="/etc/redis/${REDISPORT}.conf"
改 为 CONF="/usr/local/redis/conf/${REDISPORT}.conf"
(6) 
更 改 redis 开 启 的 命 令 ,以 后 台 运 行 的 方 式 执 行 :
$EXEC $CONF &
   #“&”作 用 是 将 服 务 转 到 后 面 运 行

修 改 后 的 /etc/rc.d/init.d/redis 服 务 脚 本 内 容 为 :
#!/bin/sh
#chkconfig: 2345 80 90
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/usr/local/redis/conf/${REDISPORT}.conf"
case "$1" in
 start)
 if [ -f $PIDFILE ]
 then
 echo "$PIDFILE exists, process is already running or crashed"
 else
 echo "Starting Redis server..."
 $EXEC $CONF &
 fi
 ;;
 stop)
 if [ ! -f $PIDFILE ]
 then
 echo "$PIDFILE does not exist, process is not running"
 else
 PID=$(cat $PIDFILE)
 echo "Stopping ..."
 $CLIEXEC -p $REDISPORT shutdown
 while [ -x /proc/${PID} ]
 do
 echo "Waiting for Redis to shutdown ..."

 sleep 1
 done
 echo "Redis stopped"
 fi
 ;;
 *)
 echo "Please use start or stop as first argument"
 ;;
esac

以 上 配 置 操 作 完 成 后 ,便 可 将  Redis 注 册 变 为 服 务 :
chkconfig --add redis

防 火 墙 中 打 开 对 应 的 端 口
vi /etc/sysconfig/iptables
添 加 :
-A INPUT -m state --state NEW -m tcp -p tcp --dport6379 -j ACCEPT
重 启 防 火 墙 :
service iptables restart

修 改 redis 配 置 文 件 设 置 :
vi /usr/local/redis/conf/6379.conf
修 改 如 下 配 置
daemonize no 
改 为  daemonize yes
备 注 :假 如 不 改 为 yes,pid文 件 是 不 会 生 成 ,startstop命 令 是 不 会 生 效 的 (依 赖 pid文 件 )
pidfile /var/run/redis.pid 
改 为  pidfile /var/run/redis_6379.pid

启 动 Redis 服 务
service redis start

Redis 添 加 到 环 境 变 量 中 :
vi /etc/profile
在 最 后 添 加 以 下 内 容 :
## Redis env
export PATH=$PATH:/usr/local/redis/bin

使 配 置 生 效 :
source /etc/profile

当 前 可 以 直 接 使 用  redis-cli redis 命 令 了 :
redis-cli
图 片
关 闭 Redis 服 务
service redis stop
提 醒 :默 认 状 况 下 ,Redis 开 启 安 全 认 证 ,可 以 通 过 /usr/local/redis/conf/6379.conf  requirepass 指 定 一 个 验 证 密 码  

在 jeesz中 主 要 使 用 redis做 分 布 式 缓 存 ,存 储 登 录 用 户 信 息 ,做 session共 享 管 理

图 片

完 整 的 项 目 源 码 来 源

欢 迎 大 家 一 起 学 习 研 究 相 关 技 术 ,源 码 获 取 请 加 求 求 : 二 零 四 贰 八 四 九 贰 叁 柒



随机阅读

Copyright © 2017 英语文化交流 All Rights Reserved.