apache的tomcat负载均衡和集群配置
略看了一下,感觉太复杂,要配置的东西太多,因此在这里写出一种更简洁的方法。
要集群tomcat主要是解决SESSION共享的问题,因此我利用memcached来保存session,多台TOMCAT服务器即可共享SESSION了。
你可以自己写tomcat的扩展来保存SESSION到memcached。
这里推荐使用memcached-session-manager这个开源项目(http://code.google.com/p/memcached-session-manager/ ),下面简称msm。
如何安装nginx、memcached、tomcat这些就不多说了。
先说明一下测试环境:
tomcat1、nginx、memcached安装在192.168.1.11
tomcat2安装在192.168.1.101
下面分步实现基于nginx的tomcat负载均衡和集群配置
一,tomcat集群
1,先下载msm及其依赖包
http://memcached-session-manager.googlecode.com/files/memcached-session-manager-1.3.0.jar
http://memcached-session-manager.googlecode.com/files/msm-javolution-serializer-jodatime-1.3.0.jar
http://memcached-session-manager.googlecode.com/files/msm-javolution-serializer-cglib-1.3.0.jar
http://spymemcached.googlecode.com/files/memcached-2.4.2.jar
http://memcached-session-manager.googlecode.com/files/javolution-5.4.3.1.jar
2,将这5个包放到$TOMCAT_HOME/lib目录下
3,修改$TOMCAT_HOME/conf/server.xml
- <Context docBase="E:/java_codes/TestSession/WebContent" path="" reloadable="true" >
- <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager"
- memcachedNodes="n1:localhost:11211"
- requestUriIgnorePattern=".*\.(png|gif|jpg|css|js)$"
- sessionBackupAsync="false"
- sessionBackupTimeout="100"
- transcoderFactoryClass="de.javakaffee.web.msm.serializer.javolution.JavolutionTranscoderFactory"
- copyCollectionsForSerialization="false"
- />
- </Context>
这里的memcachedNodes是填写memcached节点,多个节点时可以以空隔分开,如:
n1:localhost:11211 n2:localhost:11212
sessionBackupTimeout的单位为分钟
E:/java_codes/TestSession/WebContent 替换成你的WEB目录
修改后重启两个TOMCAT即可,这个时候已经解决SESSION的共享问题.
二,配置nginx实现负载均衡
以我的nginx.conf为例
- #user nobody;
- worker_processes 1;
- error_log logs/error.log;
- events {
- worker_connections 1024;
- }
- http {
- include mime.types;
- default_type application/octet-stream;
- sendfile on;
- keepalive_timeout 65;
- #gzip on;
- upstream www.docyeah.com {
- server 192.168.1.11:8080;
- server 192.168.1.101:8080;
- }
- server {
- listen 80;
- server_name www.docyeah.com;
- charset utf-8;
- location / {
- root html;
- index index.html index.htm;
- proxy_pass http://www.docyeah.com;
- proxy_set_header X-Real-IP $remote_addr;
- client_max_body_size 100m;
- }
- location ~ ^/(WEB-INF)/ {
- deny all;
- }
- error_page 500 502 503 504 /50x.html;
- location = /50x.html {
- root html;
- }
- }
- }
将www.docyeah.com替换成你的域名
192.168.1.11和192.168.1.101替换成你服务器的IP
OK,已经完成。启动nginx即可。
这是我采用的负载均衡及集群方案,希望大家拍砖.
ps:javaeye的编辑器有问题,代码里加颜色后居然变乱了
转载于:https://www.cnblogs.com/telwanggs/p/6473578.html
apache的tomcat负载均衡和集群配置相关推荐
- 基于nginx的tomcat负载均衡和集群(超简单)
今天看到"基于apache的tomcat负载均衡和集群配置 "这篇文章成为javaEye热点. 略看了一下,感觉太复杂,要配置的东西太多,因此在这里写出一种更简洁的方法. 要集群t ...
- Linux下Apache与Tomcat的完全分布式集群配置(负载均衡)
最近公司要给客户提供一套集群方案,项目组采用了Apache和Tomcat的集群配置,用于实现负载均衡的实现. 由于以前没有接触过Apache,因此有些手生,另外在网上搜寻了很多有关这方面的集群文章,但 ...
- linux下一个apache+tomcat负载均衡和集群
先说一下我的环境 一个ubuntu虚拟机, 一个apache2.2示例 两tomcat1.7示例 1.安装apacheserver sudo apt-get install apache2 假设要重新 ...
- linux ajp集群,Tomcat6_Apache2.2_ajp负载均衡加集群实战
Tomcat6_Apache2.2_ajp负载均衡加集群实战 [日期:2011-04-20] 来源:Linux社区 作者:Linux [字体:大 中 小] 3.tomcat负载均衡和集群配置 参考官方 ...
- 【转】Apache Http Server与Tomcat实现负载均衡和集群
Apache Http Server与Tomcat实现负载均衡和集群 一.分布式实现原理 如上图所示,主要通过 Apache-Server 作为中转服务器,实现多个 tomcat 服务器之间的分布式处 ...
- 使用LVS(Linux Virtual Server)在Linux上搭建负载均衡的集群服务
使用LVS(Linux Virtual Server)在Linux上搭建负载均衡的集群服务 一.基于于NAT的LVS的安装与配置. 1. 硬件需求和网络拓扑 ...
- 使用LVS和Keepalived搭建高可用负载均衡服务器集群
目录 1.什么是LVS和Keepalived 2.负载均衡服务器集群示例环境搭建及安装配置 2.1.环境网络拓扑结构 2.2.安装ipvsadm软件 2.3.安装keepalived 2.4.配置网络 ...
- Pacemaker,Corosync和PCS搭建高可用性负载均衡linux 集群(httpd)
Pacemaker,Corosync和PCS搭建高可用性负载均衡linux 集群(httpd) 一.高可用性的概念: 1.一种机制来定义哪些系统可以被用作集群节点 2.哪些服务或者应用可以在节点间作失 ...
- web应用的负载均衡、集群、高可用(HA)解决方案
web应用的负载均衡.集群.高可用(HA)解决方案 参考文章: (1)web应用的负载均衡.集群.高可用(HA)解决方案 (2)https://www.cnblogs.com/huojg-21442/ ...
最新文章
- iOS开发网络篇—使用ASI框架进行文件下载
- Ubuntu18.04中Anaconda启动 Navigator
- 简单的docker命令ubuntu系统
- 聊聊同步、异步、阻塞与非阻塞
- 用clipboard.js实现纯JS复制文本到剪切板
- Android 串口开发,发送串口命令,读卡,反扫码,USB通讯,实现demo。——持续更新
- 涂鸦智能dubbo-go亿级流量的实践与探索
- 用JAVA制作小游戏——飞机大战(三)
- javacc解析json报错
- 手工收集awr报告_一个Oracle小白的AWR报告分析(一)
- 学习echarts需要先学习java 吗_Echarts和Echarts-java类库简单使用方法
- 2021年中国电子学习课程市场趋势报告、技术动态创新及2027年市场预测
- 【《zw版·Halcon与delphi系列原创教程》 zw_halcon人脸识别
- 使用matlab对路径的字符串进行分割和合成
- php word 简历模板,php程序员简历模板
- html设置默认选中状态,html select 标签设置默认选中
- 黑马程序员—[.Net就业薪资] 黑马.Net 12期毕业33个工作日,就业率达98%,平均薪水:6972元
- LPC1768处理器开发板下载软件的使用方法
- (PTA)基础编程题目集
- 实训五#5.5猫与餐厅的故事