CentOS(linux) 下Redis的安装(Nginx+Tomcat集群第三步:负载均衡+Session共享)

Nginx+Tomcat集群第三步(负载均衡+基于Spring Boot的Session共享)

Nginx和Tomcat没安装好的可以参考前两步:

CentOS(linux) 下Nginx的安装

CentOS(linux) 下Tomcat的安装

好了,现在三步曲第三步开始了

系统
CentOS 7.4(腾讯云)
软件
redis数据库

  • 负载均衡
  • 打开/root/Server/nginx/conf的nginx.conf(其它被注释的代码已隐藏)
user root;
worker_processes  1;#工作进程的个数,一般与计算机的cpu核数一致

events {
    worker_connections  1024;#单个进程最大连接数(最大连接数=连接数*进程数)
}


http {
    include       mime.types;#文件扩展名与文件类型映射表
    default_type  application/octet-stream;#默认文件类型

    sendfile        on;#开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设为 on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载。注意:如果图片显示不正常把这个改成off。

    keepalive_timeout  65;#长连接超时时间,单位是秒

    gzip  on;#启用Gizp压缩

    #服务器集群
    upstream  test {  #服务器集群名字    
        server    localhost:8080  weight=1;#服务器配置   weight是权重的意思,权重越大,分配的概率越大。
        server    localhost:8090  weight=2;
    }
    
    #Nginx的配置
    server {#每一个server相当于一个代理服务器
        listen       80;#监听80端口
        server_name  localhost;#当前服务的域名,可以有多个,用空格分隔

        location / {#表示匹配的路径,这时配置了/表示所有请求都被匹配到这里
            #root   html;
            #index  index.html index.htm;#当没有指定主页时,默认会选择这个指定的文件,可多个,空格分隔
            proxy_pass http://test;  #请求转向自定义的服务器列表
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }
}
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
  • 解压redis
tar -zvxf redis-4.0.10.tar.gz
  • 进入解压包
cd /root/redis-4.0.10
  • 编译安装
make && make install
  • 将配置文件redis.conf复制到/etc下

《CentOS(linux) 下Redis的安装(Nginx+Tomcat集群第三步:负载均衡+Session共享)》

  • 打开/etc下的redis.conf文件进行配置
(1)bind 127.0.0.1 改 bind *     #不指定地址
(2)daemonize no 改 daemonize yes #后台守护进程方式运行
(3)requirepass xxx   #设置密码

配置文件基本说明
daemonize:#是否以后台守护进程方式运行
pidfile:#pid文件位置
port:#监听的端口号
timeout:#请求超时时间
loglevel:#log信息级别,总共支持四个级别:debug、verbose、notice、warning,默认为verbose
logfile:#默认为标准输出(stdout),如果配置为守护进程方式运行,而这里又配置为日志记录方式为标准输出,则日志将会发送给/dev/null
databases:#开启数据库的数量。使用“SELECT库ID”方式切换操作各个数据库
save**:#保存快照的频率,第一个*表示多长时间,第二个*表示执行多少次写操作。在一定时间内执行一定数量的写操作时,自动保存快照。可设置多个条件。
rdbcompression:#保存快照是否使用压缩dbfilename:#数据快照文件名(只是文件名,不包括目录)。默认值为dump.rdb
dir:#数据快照的保存目录(这个是目录)
requirepass:#设置Redis连接密码,如果配置了连接密码,客户端在连接Redis时需要通过AUTH<password>命令提供密码,默认关闭。
  • 启动redis
cd /usr/local/bin
./redis-server /etc/redis.conf
  • 查看redis启动
ps -ef | grep redis

《CentOS(linux) 下Redis的安装(Nginx+Tomcat集群第三步:负载均衡+Session共享)》

  • 关闭redis
redis-cli shutdown

关闭指定端口redis

redis-cli -p 6379 shutdown
  • Session同步

PS:因为本人学的是Spring Boot所以我就以Spring Boot来实现了。
1.Spring Boot添加Maven依赖

<!--session共享依赖spring-session-data-redis-->
        <dependency>
            <groupId>org.springframework.session</groupId>
            <artifactId>spring-session-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

2.添加配置(我的配置文件是application.yml,默认的是application.properties)

#Session共享
  session:
    store-type: redis
  redis:
    host: 127.0.0.1  #地址
    port: 6379    #端口
    password: 1130377654   #密码

附:Redis中文入门手册下载地址

    原文作者:司木
    原文地址: https://segmentfault.com/a/1190000015642628
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞