apache+tomcat集群及图片共享的解决办法
一、下载解压版httpd-2.4.10-win64-VC11
解压出Apache24
在Apache 24\conf下新建workers.properties
1. worker.list=controller,Tomcat1,Tomcat2
2. #========Tomcat1========
3. worker.Tomcat1.port=8009
4. worker.Tomcat1.host=localhost
5. worker.Tomcat1.type=ajp13
6. worker.Tomcat1.lbfactor=1
7.
#========Tomcat2========
8. worker.Tomcat2.port=8010
9. worker.Tomcat2.host=localhost
10. worker.Tomcat2.type=ajp13
11. worker.Tomcat2.lbfactor=1
#========Tomcat3========
8. worker.Tomcat3.port=8011
9. worker.Tomcat3.host=localhost
10. worker.Tomcat3.type=ajp13
11. worker.Tomcat3.lbfactor=1
12.#========controller========
13. worker.controller.type=lb
14.worker.controller.balanced_workers=Tomcat1,Tomcat2
15. worker.controller.sticky_session=false
在Apache 2.2\conf下新建mod_jk.conf
1. LoadModule jk_module modules/mod_jk.so
2. JkWorkersFile conf/workers.properties
3. JkMount /* controller
修改httpd.conf
1. include conf/mod_jk.conf
二、下载mod_jk.so
解压该文件,可得到”mod_jk.so”。将”mod_jk.so”拷到Apache 24\modules目录下
三、下载解压版tomcat8
解压出三个tomcat1,2,3
分别修改tomcat下的conf/server.xml
1. <?xml version='1.0' encoding='utf-8'?>
2.
3. <!—tomcat1将端口号由8005改为8005,tomcat2改为8006,tomcat3改为8007 -->
4. <Server port="8005" shutdown="SHUTDOWN">
5. <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
6. <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
7. <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
8. <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
9. <GlobalNamingResources>
10. <Resource name="UserDatabase" auth="Container"
11. type="org.apache.catalina.UserDatabase"
12. description="User database that can be updated and saved"
13. factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
14. pathname="conf/tomcat-users.xml" />
15. </GlobalNamingResources>
16. <Service name="Catalina">
17.
18. <!—tomcat1将端口号由8080改为8080,tomcat2改为8081,tomcat3改为8082 -->
19. <Connector port="8080" protocol="HTTP/1.1"
20. connectionTimeout="20000"
21. redirectPort="8443" />
22.
23. <!-- tomcat1将端口号由8009改为8009,tomcat2改为8010,tomcat3改为8011 -->
24. <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
25.
26. <!--在Engine标签添加jvmRoute属性-->
27. <Engine name="Catalina" defaultHost="localhost" jvmRoute="Tomcat1">
28.
29. <!--将Cluster标签的注释去掉-->
30. <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
31.
32. <Realm className="org.apache.catalina.realm.LockOutRealm">
33. <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
34. resourceName="UserDatabase"/>
35. </Realm>
36. <Host name="localhost" appBase="webapps"
37. unpackWARs="true" autoDeploy="true">
38. <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
39. prefix="localhost_access_log" suffix=".txt"
40. pattern="%h %l %u %t "%r" %s %b" />
41.
42. <!—配置出一个tomcat集群能访问的公共路径,这样就可以在操作tomcat时,能将上传的图片或附件存储在这个位置,三个tomcat就可以共享此处的文件-->
43. <Contextpath="/clusterannx"docBase="D:\ApacheTomcatCluster\tomcat_cluster\clusterannx"ebug="0" privileged="true"></Context>
44.
45. </Host>
46. </Engine>
47. </Service>
48.</Server>
文件共享方案
<!—配置出一个tomcat集群能访问的公共路径,这样就可以在操作tomcat时,能将上传的图片或附件存储在这个位置,三个tomcat就可以共享此处的文件-->
<Context path="/clusterannx"docBase="D:\ApacheTomcatCluster\tomcat_cluster\clusterannx"ebug="0" privileged="true"></Context>