Tomcat

Tomcat中的遠端並行部署

  • May 4, 2016

我們正在使用 TeamCity 建構伺服器上的 Maven 將應用程序部署到多個 Jelastic Tomcat 環境。這運作良好,並且已經這樣做了相當長的一段時間。

現在,我們希望更接近零停機部署,並希望找到一種簡單的方法來最小化或消除停機時間。Tomcat 的 Parallel Deploy 功能似乎很合適。

但是,Jelastic Maven 外掛似乎不處理並行部署或非標準(即<artifact-name>##<artifact-version>.war)存檔名稱。tomcat-maven-plugin 無法與我們的 Nginx 代理/負載均衡器配合使用,聲稱請求(PUT)太大。100 MB 應該不是問題,對吧…?:)

當我嘗試使用 Postman 進行部署時,我還會收到一條錯誤消息,指出上下文/已被使用。沒錯,這就是我想要並行部署的原因……

我已經在本地嘗試了所有方法,它就像一個魅力,但遠端是另一個問題,有沒有人在這種設置中取得成功,或者我錯過了什麼?

沒錯,Jelastic Maven 目前不支持在 Tomcat 中並行部署。功能請求已添加到增強列表中。作為目前的替代選項,您可以通過直接 SSH 連接到容器來部署戰爭存檔。或者您可以使用交換域- 創建一個新環境,將新版本部署到這個新環境,對其進行測試,如果一切正常,則在新舊環境之間交換域。

除此之外,我們將發布 Traffic Distributor - 一個用於復雜應用程序的零停機部署的特定模組。它是某種負載均衡器,允許通過拖放或 API 呼叫在環境之間重新路由部分或全部流量。一個月後就要公開了。

引用自:https://serverfault.com/questions/774468