如何在同一台電腦上同時運行2個tomcat

來源:互聯網
上載者:User

標籤:

前段時間做的項目,由於是給手機用戶端做伺服器,所以用戶端在開發過程中需要訪問我的伺服器。

問題是我也在開發,並且沒有加入熱部署,那麼勢必會造成伺服器頻繁重啟,這也對用戶端開發會產生一定的影響。

此時就需要跑兩個tomcat了,一個我開發用,一個給用戶端用。那麼問題來了,如何在同一台電腦上同時運行2個tomcat呢?

如果什麼都不配置,我們來運行兩個tomcat試試:


出錯了,提示我們連接埠號碼8005被佔用。tomcat預設使用8005連接埠來監聽關閉tomcat的請求

所以該連接埠號碼不能重複,那麼我們可以通過修改tomcat的conf/server.xml檔案來改變這個連接埠

這個連接埠定義在Server標籤中,port代表連接埠號碼,而shutdown代表關閉伺服器的請求命令,比如我們改成8006

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

對於一個已經開啟的tomcat伺服器,可以在cmd下使用telnet localhost 8005命令進行串連,然後輸入“SHUTDOWN” 命令就可以關閉伺服器。

修改這一個連接埠是不夠的,想必你應該已經想到了,因為tomcat啟動預設還會佔用8080連接埠用來監聽使用者的請求。

那麼在server.xml中找找看8080吧,大概在69行左右,找到將其改成8090:

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

順著往下看幾行,我們又會看到一個8009的連接埠號碼,這是什麼呢?先不管它,試試看能不能同時開兩個tomcat先:


誒,已經成功了嘛?此時通過localhost:8080 或者 localhost:8090都可以看到tomcat的介面

不過仔細看的話,你會發現底部有這麼幾句

資訊:Port busy 8009 java.net.BindException: Address already in use: JVM_Bind嚴重:Can't find free port 8009 8009

這個連接埠還有印象嗎?剛剛在server.xml看到過,這是tomcat內建的第二個連接器,它監聽8009連接埠,負責和其他的HTTP伺服器建立串連。在把Tomcat與其他HTTP伺服器整合時,就需要用到這個連接器。知道了它的用處,其實一般在我們項目中用不到這個連接埠,那麼改不改這個連接埠號碼其實也無所謂~



如何在同一台電腦上同時運行2個tomcat

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.