搭建JEESZ分布式架构10-Redis分布式缓存安装(单节点)

Redis分布式缓存安装(单节点)

Redis官网:http://redis.io
独立缓存服务器:IP:xxx.xxx.xxx.xxx
安装环境:CentOS 6.6
Redis 版本:redis-3.0 (因为 Redis3.0 在集群和性能提升方面的特性,rc 版为正式版的候选版,请在安装时去官网选用最新版)
用户:root
安装目录:/usr/local/redis

下面我们针对于Redis安装做下详细的记录:
编译和安装所需的包:
# yum install gcc tcl

提醒:下载 3.0 版 Redis(当前最新版 redis-3.0.0-rc5.tar.gz,请在安装时去官网选用最新版)
# cd /usr/local/src
# wget https://github.com/antirez/redis/archive/3.0.0-rc5.tar.gz
提醒:此路径可以通过官网去下载目录copy

创建安装目录:
# mkdir /usr/local/redis

解压:
# tar -zxvf 3.0.0-rc5.tar.gz
# mv redis-3.0.0-rc5 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-dump redis-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 --dport 6379 -j ACCEPT
重启防火墙:
# service iptables restart

修改 redis 配置文件设置:
# vi /usr/local/redis/conf/6379.conf
修改如下配置
daemonize no 改为 daemonize yes
备注:如果不改为yes,pid文件是不会生成,start、stop命令是不会生效的(依赖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 指定一个
验证密码

源码地址获取mingli.com

有兴趣的朋友们可以前往球球哦~一起分享学习技术:2042849237

时间: 2024-10-13 02:21:59

搭建JEESZ分布式架构10-Redis分布式缓存安装(单节点)的相关文章

搭建JEESZ分布式架构5--Dubbo管控台的安装

Dubbo管控台的安装 1.     Dubbo管理控制台的主要作用:对Dubbo服务管控 注意:Dubbo 管控台可以对注册到 zookeeper 注册中心的服务或服务消费者进行管理,Dubbo管控台的运行对 Dubbo 服务没有影响,所以管控台不需要高可用,可以单节点部署. 2.     dubbo管理控制台开源部分主要包含: 提供者.路由规则  .动态配置  .访问控制  .权重调节  .负载均衡  .负责人等 3.     管理控制台版本 当前稳定版:dubbo-admin-2.5.3.

10.Redis分布式集群

10.Redis分布式集群10.1 数据分布10.1.1 数据分布理论10.1.2 Redis数据分区10.1.3 集群功能限制10.2 搭建集群10.2.1 准备节点10.2.2 节点握手10.2.3 分配槽10.2.4 用redis-trib.rb搭建集群10.3 节点通信10.3.1 通信流程10.3.2 Gossip消息10.3.3 节点选择10.4 集群伸缩10.4.1 伸缩原理10.4.2 扩容集群10.4.3 收缩集群10.5 请求路由10.5.1 请求重定向10.5.2 Smar

CK21190-Mycat分布式架构之Mycat分布式架构实战解析

CK21190-Mycat分布式架构之Mycat分布式架构实战解析 Mycat是国内第一个卖电子书的开源软件,参与的作者们平生第一次分到了一笔开源收入的酬劳,虽然微不足道,但那一刻,他们都坚信,Mycat会越来越好.如今,Mycat的稳定参与者人数已经超过10人,包括很多美女,而第三代新生志愿者团队也正在形成中.Mycat已经有超过300个生产案例,从政府的项目.电信项目.电商项目.O2O项目.游戏到一些大数据分析的项目,Mycat的生态圈正在加速形成中,使用或者研究过Mycat的知名公司名单越

JavaWeb项目架构之Redis分布式日志队列

架构.分布式.日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Redis做消息队列罢了. 前言 为什么需要消息队列? 当系统中出现"生产"和"消费"的速度或稳定性等因素不一致的时候,就需要消息队列,作为抽象层,弥合双方的差异. 比如我们系统中常见的邮件.短信发送,把这些不需要及时响应的功能写入队列,异步处理请求,减少响应时间. 如何实现? 成熟的JMS消息队列中间件产品市面上有很多,但是基于目前项目的架构以及部署情况,我们采用Redis做

JavaWeb项目架构之Redis分布式日志队列-SpringBoot实例

架构.分布式.日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Redis做消息队列罢了. ? 为什么需要消息队列? 当系统中出现“生产“和“消费“的速度或稳定性等因素不一致的时候,就需要消息队列,作为抽象层,弥合双方的差异.比如我们系统中常见的邮件.短信发送,把这些不需要及时响应的功能写入队列,异步处理请求,减少响应时间. 如何实现? 成熟的JMS消息队列中间件产品市面上有很多,但是基于目前项目的架构以及部署情况,我们采用Redis做消息队列. 为什么用Redis?

分布式架构 springcloud+redis+springmvc+ springboot

内容管理(CMS)系统,包括内容管理,栏目管理.站点管理.公共留言.文件管理.前端网站展示等功能: 在线办公(OA)系统,主要提供简单的流程实例. 提供了常用工具进行封装,包括日志工具.缓存工具.服务器端验证.数据字典.当前组织机构数据(用户.机构.区域)以及其它常用小工具等.另外 还提供一个强大的在线 代码生成 工具,此工具提供简单的单表.一对多.树结构功能的生成,如果对外观要求不是很高,生成的功能就可以用了.使用了基础框架,可以提高快速开发效 率. 内置功能(只列了一部分功能) 1.用户管理

Dubbo分布式架构实战--FastDFS分布式文件系统的安装与使用(单节点)

样例参考视频: http://www.roncoo.com/course/view/85d6008fe77c4199b0cdd2885eaeee53 跟踪服务器:192.168.4.121 (edu-dfs-tracker-01) 存储服务器:192.168.4.125 (edu-dfs-storage-01) 环境:CentOS 6.6 用户:root 数据目录:/fastdfs   (注:数据目录按你的数据盘挂载路径而定) 安装包: FastDFS v5.05 libfastcommon-m

搭建JEESZ分布式架构4--Dubbo简介

1.Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案.简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的,只有在分布式的时候,才有dubbo这样的分布式服务框架的需求,并且本质上是个服务调用的东东,说白了就是个远程服务调用的分布式框架(告别WebService模式中的WSdl,以服务者与消费者的方式在dubbo上注册)其核心部分包含:1. 远程通讯: 提供对多种基于长连接的NIO框架抽象封装,包括

一文归纳总结分布式架构的那些事!

双十一购物狂欢节已经过去了,作为程序员的你,除了在关心自己的快递的运送情况之外,最关心的是不是双十一架构技术是如何承受亿级用户流量的冲击,又是如何在分布式架构中实现单点登陆,形成支持高并发,高可用的分布式架构技术呢?下面小编就来帮你总结如何从0到1学习分布式架构技术,如何实现从小白到架构师的蜕变!! 一.初识分布式架构: 1.初识分布式架构及意义 2.如何把应用从单机架构扩展到分布式 3.大型分布式架构的演进过程 4.构建分布式架构的重要因素 (1)CDN加速静态访问 (2)分布式储存 (3)分

Java企业级电商项目实战 Tomcat集群与Redis分布式

本套课程包含:java电商项目实战课程 Tomcat集群视频教程 Redis项目实战课程课程目录1-1 课程导学1-2 大型Java项目架构演进解析1-3 一期课程与问答服务回顾1-4 一期项目结构和代码回顾1-5 课程使用系统及技术版本介绍(一期+二期)1-6 二期项目初始化第2章 Lombok框架集成及原理解析本章会对Lombok框架进行介绍,同时会讲解Lombok的原理.并手把手领着小伙伴们实战,引入Lombok以及IDE安装Lombok插件.然后会带着大家实战Coding,讲解@Data