httpd-2.2.21.tar.gz
apache-tomcat-6.0.32.tar.gz
jdk-6u26-linux-i586.bin
jdk,和tomcat 环境配置忽略
a.在 /opt目录新增apache目录并将httpd-2.2.21.tar.gz copy到改目录中.
cd /opt
mkdir apache
tar zxf httpd-2.2.21.tar.gz
cd httpd-2.2.21
【注意:安装APR
cd srclib/apr
#./configure --prefix=/usr/local/apr
#make
#make install
安装APR-util
cd srclib/apr-util
#./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
#make
#make install
# ./configure --prefix=/usr/local/apache
--enable-so --enable-mods-shared=all
--enable-cgi
--with-apr=/usr/local/apr
--with-apr-util=/usr/local/apr-util/bin
# make
#make install 】
然后配置 httped prefix
./configure --prefix=/opt/web/apache2
--enable-mods-shared=most # --prefix后面的红色路径可以根据实际情况自定义
然后屏幕会显示一大堆配置信息,完成后
make #开始编译
make install #编译后,进入安装阶段
cd /opt/solft/apache2/bin
./apachectl -k start #启动apache服务
如果如下提示信息,代表成功了
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
在浏览器中输入http://127.0.0.1/ 就可以看到 It works!
b.开始安装 mod_proxy.so和mod_proxy_ajp.so,mod_proxy_balancer.so模块
cd /opt/apache/httpd-2.2.21/modules/proxy
/opt/web/apache2/
bin/apxs -i -a -c mod_proxy.c proxy_util.c
/opt/web/apache2/
bin/apxs -i -a -c mod_proxy_ajp.c ajp*.c
/opt/web/apache2/
bin/apxs -i -a -c mod_proxy_balancer.c
c.配置httpd.conf
vim /opt/web/apache2/conf/httpd.conf
ProxyPass /images !
ProxyPass /css !
ProxyPass /js !
ProxyRequests Off
ProxyPass /examples balancer://mycluster/ stickysession=JSESSIONID
ProxyPassReverse /examples balancer://mycluster/ stickysession=JSESSIONID
<Proxy balancer://mycluster>
BalancerMember ajp://192.168.1.102:8009
/examples/ route=worker1 loadfactor=1
BalancerMember ajp://192.168.1.102:8909
/examples/ route=worker2 loadfactor=1
</Proxy>
SetHandler balancer-manager
#上面ip端口红色部分与apache-tomcat-x.x.x/config/server.xml 中<Connector port="8009
" protocol="AJP/1.3" redirectPort="8443" /> 中的端口保持一直
d.编辑tomcat1/apache-tomcat-6.0.32/config/server.xml
server.xml文件,如果tomcat在不同机器上,则不需要修改,本人环境是本机上测试.所以其中的一个tomcat的端口一定要修改
需要修改的地方(红色部分)
<Connector port="8080
" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Server port="8005
" shutdown="SHUTDOWN">
<Connector port="8009
" protocol="AJP/1.3" redirectPort="8443" />
把这段信息<Engine name="Catalina" defaultHost="localhost"/>
用下面的配置信息覆盖,如果在本机中红色端口需要修改,jvmRoute参数不能一样
<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker1"
>
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8">
<Manager className="org.apache.catalina.ha.session.DeltaManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Membership className="org.apache.catalina.tribes.membership.McastService"
address="228.0.0.4"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="192.168.1.102"
port="4000
"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
</Sender>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=""/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
<ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>
e.配置tomcat.x.x.x/webapps/examples/WEB-INF/web.xml,加上红色部分,以支持seesion复制
在<webapp>
...........
.........
<distributable/>
</webapp>
最后.复制tomcat下webapps下的文件到 /opt/web/apache2/htdocs
cp –R /opt/web/tomcat1/apache-tomcat-6.0.32/webapps/* /opt/web/apache2/htdocs
到这里负载均衡和session复配置已经完成
开始启动 apache2
cd /opt/web/apache2/bin
./apachectl -k start
启动2个tomcat
cd /opt/web/tomcat2/apache-tomcat-6.0.32/bin
./start.sh
cd /opt/web/tomcat1/apache-tomcat-6.0.32/bin
./start.sh
测试session 复制
http://192.168.1.102/examples/servlets/servlet/SessionExample
查看负载均衡
http://192.168.1.102/balancer-manager
但是有个问题,如果session有很多对象,而对象又不停的变化,这就使得
seesion会消耗很大性能.
网上查了下,可以用memcached来做缓存应用.有时间再把这个整理下
分享到:
相关推荐
Apache + Tomcat 集群配置 Apache + Tomcat 集群配置是指将 Apache 服务器与 Tomcat 服务器集成,以提高服务器的性能和可扩展性。本文将详细介绍如何配置 Apache + Tomcat 集群,包括安装 Apache 和 Tomcat 服务器...
Apache+Tomcat集群配置,Apache+Tomcat集群配置,Apache+Tomcat集群配置
当我们需要处理高并发、负载均衡或提高应用可用性时,单个Tomcat实例可能无法满足需求,这时就需要进行Tomcat集群配置。本资料包包含了“tomcat集群配置”的程序及文档,提供了现成的例子,帮助我们理解和实践Tomcat...
当我们谈论“tomcat集群配置文件”时,我们指的是将多个Tomcat实例组织成一个集群,以提高应用程序的可用性和可伸缩性。在集群环境中,负载均衡、故障转移和资源共享是关键特性。 首先,要配置Tomcat集群,你需要...
**二、Tomcat集群配置步骤** 1. **安装多个Tomcat实例**:首先,你需要在不同的服务器上或同一服务器的不同端口上安装并启动多个Tomcat实例。 2. **配置共享目录**:为确保集群内的节点共享session信息,需要设置...
【标题】:“Tomcat集群配置”是指在多台服务器上部署和管理多个Tomcat实例,以实现负载均衡、高可用性和容错性。这通常涉及将应用部署在多个Tomcat服务器上,通过一个前端负载均衡器(如Apache HTTP Server或Nginx...
Apache+Tomcat集群配置续Apache+Tomcat集群配置续Apache+Tomcat集群配置续Apache+Tomcat集群配置续
nginx + tomcat 集群配置 负载 nginx 下载地址: http://nginx.org/en/download.html 联合tomcat 实现集群 windows: Nginx.conf 配置 //见文件夹下面的nginx.conf 更改tomcat的配置: 第一处端口...
### Apache和Tomcat集群配置详解 #### 一、软件准备 在进行Apache和Tomcat集群配置之前,首先需要准备所需的软件资源。 - **Apache 2.2**: - Windows平台: 从官方网站 [http://httpd.apache.org/download.cgi]...
### Tomcat集群配置详解 #### 1. 配置方案 在描述中提到了三种配置方案: 1. **使用Apache2.2中的mod_ajp集成Tomcat5.5**:这种方案通过Apache的mod_ajp模块,使Apache能够与Tomcat通过AJP协议通信,从而实现请求...
以下是对Apache与Tomcat集群配置的详细解析: 1. **Apache HTTP Server配置**: - Apache通常作为前端代理服务器,接收来自客户端的HTTP请求,并通过AJP协议将这些请求转发给Tomcat实例。 - 在`httpd.conf`配置...
本篇文章将详细探讨如何在Redis+Tomcat集群配置中实现Session共享。 首先,我们需要理解什么是Session。Session是Web应用中用于存储用户状态的一种机制,通常用于保存用户的登录信息、购物车等数据。在单台服务器...
**二、Tomcat集群配置** 1. **安装Tomcat**:下载并安装两个Tomcat实例,分别监听不同的端口(如上述8080和8081)。 2. **复制共享session配置**:由于集群中的各个Tomcat实例需要共享session,所以需要在每个...
以下将详细介绍Nginx与Tomcat集群配置以及Redis配置的相关知识点。 ### Nginx的编译与安装 1. **安装编译环境**:在安装Nginx前,需要确保系统已经安装了必要的编译工具,如GCC、Make等。同时,可能还需要安装pcre...