读书人

APACHE(proxy_ajp_stickysession) + T

发布时间: 2012-08-29 08:40:14 作者: rapoo

APACHE(proxy_ajp_stickysession) + TOMCAT实现高可用网站或管理系统集群

?

?

1.基础环境安装设置

?

操作系统环境,APACHE安装,TOMCAT集群安装,TOMCAT测试工程请参见:

http://zp820705.iteye.com/blog/1347417

?

2.TOMCAT配置

Tomcat集群配置后端Tomcat Server为支持AJP的独立服务,前端Apache配置为粘性会话(sticky-session),Tomcat不配置Cluster配置和Session复制。

?

配置Tomcat1的server.xml

修改:

?

为:

?

?

?

配置Tomcat2的server.xml

修改:

为:

?

注意:

后端tomcat服务配置文件server.xml中指定的端口后用于接收Apache的代理转发请求,在后续apache配置中使用,本例中tomcat1和tomcat2都使用相同的配置:8009

<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

?

3.APACHE配置

apache的配置方式还是采用vhost方式配置,主配置文件(conf/httpd.conf)引用(include)vhost子配置文件(conf/extra/httpd-vhosts.conf)方式.

?

Apache的编译请参考:http://zp820705.iteye.com/blog/1347749

apache编译为支持Proxy后的module情况:

?

?

?

stickysession=JSESSIONID|jsessionid

apache采用粘性会话配置,后端服务器是tomcat,指定sessionId参数为JSESSIONID和jsessionid,其中JSESSIONID是浏览器支持cookie方式session处理,jsessionid是客户端采用URL参数方式session处理。

?

nofailover=Off

表示apache-proxy支持failover,模式是支持的,可以不配置。

?

route=tomcat1route=tomcat2

表示后端tomcat服务处理标志,与具体后端tomcat服务中的server.xml配置文件中的Engine节点配置的jvmRoute属性相同。

?

?

4.测试

?

浏览器访问测试

http://10.10.10.11/cluster/index.jsp

?

stickysession测试

访问http://10.10.10.11/cluster/index.jsp,反复刷新,应该是同一后端服务器支持服务。

使用restlet工具restclient(http://code.google.com/p/rest-client/)访问http://10.10.10.11/cluster/index.jsp,查看返回报文:

sessionId为:

Set-CookieJSESSIONID=B7EACFABF5543D0E5C19155CCDC82D02.tomcat1; Path=/cluster

红色tomcat1表示指定由后端tomcat1服务。

?

APACHE(proxy_ajp_stickysession) + TOMCAT兑现高可用网站或管理系统集群

?

?

?

读书人网 >Apache

热点推荐