Nginx+tomcat+memcached负载均衡集群服务搭建

本文介绍了如何通过Nginx进行负载均衡,结合Tomcat和Memcached实现Session共享。在实验环境中,Nginx作为负载均衡器,Tomcat作为应用服务器,Memcached用于存储和同步Session。详细步骤包括:配置Tomcat,启动Nginx,调整负载均衡策略,安装和配置Memcached,以及验证Session的共享和故障切换效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

Nginx负责负载均衡,Tomcat负责实际服务,Memcached负责同步Tomcat的Session,达到Session共享的目的。

二、实验环境

server1:
server3:

三、配置tomcat(server1和server3配置相同)

1.安装java环境

两种方法:1)rpm包:直接安装()
2)编译

2.编译安装

1)解压到/usr/local/
这里写图片描述
2)做软连接
这里写图片描述
3)修改环境变量(java家目录,java库目录,java运行路径)
这里写图片描述
source /etc/profile 执行此命令使配置生效
4)编写测试脚本
[root@server1 ~]# vim test.java
这里写图片描述
5)测试

## 先编译
[root@server1 ~]# javac test.java
## 测试
[root@server1 ~]# java test
Hello World!
2.安装tomcat

1)下载 apache-tomcat-7.0.37.tar.gz
2)解压到/usr/local

[root@server3 ~]# tar zxf  apache-tomcat-7.0.37.tar.gz  -C /usr/local/

3)做软连接

[root@server3 local]# ln -s apache-tomcat-7.0.37/ tomcat

4)在/usr/local/tomcat/webapps/ROOT下,建立test.jsp
这里写图片描述
这里写图片描述
这里写图片描述
5)在/usr/local/tomcat/bin,启动tomcat,访问tomcat的默认发布页面,index.jsp,默认端口为8080,访问:
这里写图片描述
这里写图片描述

二、负载均衡

server1:

1.启动nginx(前面lnmp中的nginx)
2.修改配置文件,重新加载

ip_hash : IP绑定,保持连接,去掉ip_hash:则默认为轮叫模式
这里写图片描述
设置默认发布文件
这里写图片描述
定义tomcat
这里写图片描述

Server3 配置不变

3.访问ip/test.jsp,可访问到时间页面(test.jsp设置为默认发布文件时,可直接访问ip)

首次访问server1
这里写图片描述
当server1 tomcat 停止后,访问server3
这里写图片描述
此时server1上的sension 会被清除,同样server3停止也会清除sension

三、配置memcached

开启memcache服务,并在tomcat中添加模块,保证关闭tomcat后sension不会被清除,使用交叉储存方法,配置如下:
这里写图片描述

1.nginx添加sticky模块

这里写图片描述

2.修改配置文件(ip_hash修改为sticky,其他配置不变),重新加载

这里写图片描述
[root@server1 logs]# nginx -s reload

2.两台虚拟机的tomcat中添加jar模块,

这里写图片描述
这里写图片描述

## 删除tc6
[root@server1 lib]# rm -f memcached-session-manager-tc6-1.6.3.jar
4.两台虚拟机都编辑tomcat配置文件

这里写图片描述
failoverNodes=”n1”(指向本机 server1为n1 server3为n2)
这里写图片描述

5.两台虚拟机修改test.jsp

这里写图片描述
这里写图片描述
这里写图片描述

6.两台虚拟机先关闭tomcat,再开启tomcat

这里写图片描述
查看 catalina.out
这里写图片描述
出现以下代码MemcachedSessionService finished initialization, sticky true, 则表示tomcat初始化成功

7.两台虚拟机安装memcahed

[root@server3 ROOT]# yum install memcached -y

8.客户端访问

这里写图片描述
当serer1 tomcat down掉时,再次访问:
这里写图片描述
此时页面显示保存了server1的sension,则配置成功

9.查看sension
## 下载telnet
[root@server3 tomcat]# yum insatll telnet -y

## telnet localhost 11211  查看本地sension

get后输入id(访问网页上显示的id)
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值