1. 程式人生 > >Tomcat+Nginx 叢集

Tomcat+Nginx 叢集

搭建簡易 nginx+Tomcat

--2個Tomcat,一個nginx.

關於修改引數的說明:Tomcat

需要修改Tomcat裡面Server.xml裡面的三個配置引數

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



2.<Connector port="80" protocol="HTTP/1.1"

                  connectionTimeout="20000"

                  redirectPort="8443" />



3.Connector port="8009" protocol="AJP/1.3"

                  redirectPort="8443" />



拿這三個數字舉例子,可自行根據實際情況修改,和第二個Tomcat裡

面的引數不要重複,(訪問資源需要不同的埠以及AJP埠)

1. 簡單概述

a.<Server port="8005" shutdown="SHUTDOWN">我們要明

確一點Tomcat是一個伺服器,它負責接受請求,他是指定一個埠,

這個埠負責監聽關閉Tomcat的請求,終止伺服器執行時,必須在

Tomcat伺服器所在的機器上發出.(這裡面涉及到了一些協議SSL

以及AJP)





b. <Connector port="80" protocol="HTTP/1.1"

                  connectionTimeout="20000"

                  redirectPort="8443" />



其中:Connector表示客戶端和Service之間的連線,換句話說就是

我要從哈爾濱到北京的話那麼就必須經過哈爾濱某個火車站(飛機坐不起)

只有經過了這個火車站你才能到北京去。裡面的port就是火車站的名字(例

如哈東站,哈西站具體的由你自己根據實際情況而定)









redirectPort這個就比較有意思了,請求分為HTTP/HTTPS這個redirectOPort

就是當你輸入Http請求的時候他會重定向到這個埠(8443),





connectionTimeout顧名思義指定超時的時間,我們知道請求一般分為三個階段(個人理解)

1.建立連線

2.資料傳輸

3.斷開連線



connectionTimeout指的是在規定的時間內連線沒有完成,那麼次連線就結束了







c.

<Connector port="8009" protocol="AJP/1.3"

redirectPort="8443" /> 8009為AJP埠,

APACHE能過AJP協議訪TOMCAT的8009埠。

具體的操作流程

一



分別修改兩個tomcat上面的三個埠號,我把我自己做實驗的程式碼直接Copy上來

A.Tomcat



1.<Server port="8114" shutdown="SHUTDOWN">



2.<Connector port="8011" protocol="HTTP/1.1"

                 connectionTimeout="20000"

                    redirectPort="8443" />



3.<Connector port="8009" protocol="AJP/1.3"

                    redirectPort="8443" />



B. Tomcat



1.<Server port="8115" shutdown="SHUTDOWN">



2.<Connector port="8012" protocol="HTTP/1.1"

                 connectionTimeout="20000"

                    redirectPort="8443" />



3.<Connector port="8010" protocol="AJP/1.3"

                    redirectPort="8443" />







接下來將你已經 "編譯"過的程式碼Copy到Tomcat裡面的WebApp資料夾中

因為Tomcat是伺服器,不是編譯器,他能讀懂.class位元組碼檔案,讀不懂.java

這裡面自己注意下



自己能夠區分,最好把專案分別標註例如:



A.Tomcat一個專案login.jsp第一行加如下程式碼<h3>第一次登入<h3>



B.Tomcat一個專案login.jsp第一行加如下程式碼<h3>第二次登入<h3>





二



分別啟動Tomcat A與 Tomcat B



三



解壓nginx

小技巧:在nginx所在的目錄下輸入CMD,會直接進入當前命令列,並且輸入

nginx,採取這種啟動方式如果說報錯誤的話,回列印在命令列,檢視任務

管理器看看nginx是否執行.



四



配置nginx下面的conf目錄下面的nginx.conf(養成一個好習慣,修改之前備份)

萬一出BUG了也好還原.



nginx.conf增加(http標籤之後,server標籤之前)



預設nginx是正向代理模式,

如果存在upstream模組,則為反向代理(下次再說)



例如:



     upstream localhost {

        upstream{

        server 127.0.0.1:8011;

        server 127.0.0.1:8012; 

     }





五



修改模組(server標籤之內)



    初始為:



    location / {

        root   html;

        index  index.html index.htm;

    }



    修改為:

    server{

        location / {

             proxy_pass  http://localhost;

        }

    }



備註:需要和上面的upstream 名稱對應



六



雙擊啟動你的nginx



七:訪問路徑



例如:http://localhost/xshlxx/user/toLogin.do







下次我們來說說關於Session同步常用的解決方法



熬夜不好,下次早點睡.