Tomcat+nginx+redis负载均衡配置

Tomcat+nginx+redis负载均衡配置

  1. 所需软件
  1. Tomcat 7  * 2
  2. nginx-1.10.3-1.el7.ngx.x86_64.rpm * 1
  3. redis-3.0.3 * 1
  4. 服务器 * 2
  1. 安装软件
  1. 采用其中一台服务器作为主服务器,用做nginx的服务器,使用以下命令行安装nginx(window下双击exe安装包安装)

rpm -ivh nginx-1.10.3-1.el7.ngx.x86_64.rpm;

  1. 在两台服务器中任意位置放置tomcat,启动服务并访问,确保两台服务器的tomcat都能启动并能正常访问;
  2. 将redis安装包解压,直接运行解压后文件夹中的run.sh启动redis服务(windows下直接双击安装并启动服务);
  1. 软件配置
  1. Tomcat配置:

配置各服务器tomcat的/conf/context.xml文件,加入下面这段:

<Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />

  <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"

           host="redis_dxp"

           port="9000"

           database="0"

           maxInactiveInterval="60" />

将host的值替换为部署了redis服务的服务器的值,port改为redis服务的端口,两个tomcat都要设置,保证使用同一个redis服务;

  1. 配置nginx(linux与windows的配置文件结构相同):

        在nginx安装目录下打开conf文件夹,找到nginx.conf文件,其中的各个参数的作用如下:

  • worker_processes:工作进程个数,可配置多个
  • worker_connections:单个进程最大连接数
  • server:每一个server相当于一个代理服务器
  • lister:监听端口,默认80
  • server_name:当前服务的域名,可以有多个,用空格分隔(我们是本地所以是localhost)
  • location:表示匹配的路径,这时配置了/表示所有请求都被匹配到这里
  • index:当没有指定主页时,默认会选择这个指定的文件,可多个,空格分隔
  • proxy_pass:请求转向自定义的服务器列表
  • upstream name{ }:服务器集群名称

上图为修改之前的nginx配置文件,默认监听80端口,即用户访问nginx服务器的80端口会访问到配置的tomcat集群;

下面在配置文件中配置tomcat集群,修改upstream下的内容:

括号内两行代码配置的是实际部署的tomcat的服务器地址和端口信息,有几个tomcat服务器参与集群就填写填写几行(注:可以在端口号后面增加一个参数weight,用于设定服务器的访问权重,数值设置的越大被访问的频率越高);

然后修改下server的配置参数,将nginx监听到的端口访问定向到部署的服务器集群上来,修改下server中的location,添加proxy_pass,值为上一步骤中设置的upstream的参数值,设置完成如下如:

https://i-blog.csdnimg.cn/blog_migrate/53fb87f3f0b89f4a4dd8c1cf32cb67a1.png

  1. 测试nginx

启动两个tomcat服务,确保两个tomcat都能正常访问;进入nginx的安装目录,使用start nginx命令行启动nginx;使用浏览器访问nginx中配置的网址和端口进行访问,检测是否访问正常;

  1. 共享文件目录设置(share)

由于两个tomcat服务部署在两台服务器上,他们之间的附件文件是无法保证相同的,所以我们设置两个tomcat使用公用的share文件,即访问到share文件时我们通过nginx将其定位到一个固定的share地址;在server括号内增加一个location,location后面的匹配路径设置为/opt/share_server1,然后将其proxy_pass设置为实际使用的share地址,如172.16.201.2:/opt/share_ server1;

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值