Apache HttpServer與Tomcat7叢集Linux版

來源:互聯網
上載者:User

Apache HttpServer與Tomcat的整合見上篇:

http://blog.csdn.net/supercrsky/article/details/8295023

 

一.配置Tomcat

這裡用兩個tomcat,直接在已安裝目錄再複製一個,命名為tomcat2。

#cp -r /opt/tomcat/ tomcat2

進入tomcat2目錄,編輯 conf/server.xml,修改預設連接埠。

#vi conf/server.xml

1.  將

<Server port="8005" shutdown="SHUTDOWN">

改成

<Server port="9005" shutdown="SHUTDOWN">

2.將

<Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" /> 

修改成:

<Connector port="9090" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="9443" /> 

3. 找到:

<Engine name="Catalina" defaultHost="localhost">

改成

<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">

同時把tomcat2中此處內容改成

<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">

4.找到

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

改成

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

5.找到

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" />

把注釋取消掉。

二.配置HTTP Server

1.檢查是否啟動了https,確保下面這句已經被注釋。

#Include conf/extra/httpd-ssl.conf

2.找到我們在最檔案最下面添加的VirtualHost節點,將其更改為: 

<VirtualHost *>DocumentRoot /usr/local/www/<Directory "/usr/local/www/composite">    AllowOverride None    Order allow,deny    Allow from all</Directory><Directory "/usr/local/www/composite/WEB-INF">         Order deny,allow         Deny from all</Directory>ServerAdmin localhostDocumentRoot /usr/local/www/ServerName localhostDirectoryIndex index.html index.htm index.jsp index.actionErrorLog logs/shsc-error_log.txtCustomLog logs/shsc-access_log.txt commonJkMount /*WEB-INF controllerJkMount /*j_spring_security_check controllerJkMount /*.action controllerJkMount /servlet/* controllerJkMount /*.jsp controllerJkMount /*.do controller</VirtualHost>

4. 編輯conf/workers.properties將內容修改為:

worker.list = controller#tomcat1worker.tomcat1.port=8009       worker.tomcat1.host=localhostworker.tomcat1.type=ajp13worker.tomcat1.lbfactor=1#tomcat2worker.tomcat2.port=9009     worker.tomcat2.host=localhostworker.tomcat2.type=ajp13worker.tomcat2.lbfactor=1#========controller========worker.controller.type=lbworker.controller.balance_workers=tomcat1,tomcat2worker.lbcontroller.sticky_session=0worker.controller.sticky_session_force=trueworker.connection_pool_size=3000worker.connection_pool_minsize=50worker.connection_pool_timeout=50000

這句非常重要worker.list = controller,如果不加httpd會無法啟動,查看日誌報錯:

Could not find a worker for worker name=controller

如果是橫向叢集,將worker.tomcat1.host或worker.tomcat2.host更改為對應的機器IP即可。

 

三.部署並測試

 確保項目裡的WEB-INF/web.xml檔案,在</web-app>之前加入了

 <distributable/>

 將工程分別部署到/usr/local/www,/opt/tomcat/webapps,/opt/tomcat2/webapps

 

 分別啟動tomcat1和tomcat2,順序無所謂,最後啟動HTTP Server

#/opt/tomcat/bin/startup.sh

#/opt/tomcat2/bin/startup.sh

#/usr/local/httpd2.2/bin/apachectl start

啟兩個Firefox,分別訪問我們的工程,這裡是:http://localhost/composite

觀察/opt/tomcat/logs/與/opt/tomcat2/logs/下對應的日誌,

 

我們發現tomcat1和tomcat2已經分別處理了一個用戶端請求。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.