所以我們有一個繁忙的遺留Web服務需要被一個新的替換。傳統的Web服務是在apache tomcat服務器上使用WAR
文件進行部署的。這是它被複制到Tomcat下的Web應用程序文件夾中,並且一切順利。我已被委派與任務來取代它,想做到這一點,確保更換Web服務方面的最佳實踐?
- 我有一個備份舊的服務
- 服務得到由另一個WAR文件替換爲沒有停機時間的
我再次知道我過於謹慎,但它是生產水平,我希望一切順利。一步一步的指導將有所幫助。
所以我們有一個繁忙的遺留Web服務需要被一個新的替換。傳統的Web服務是在apache tomcat服務器上使用WAR
文件進行部署的。這是它被複制到Tomcat下的Web應用程序文件夾中,並且一切順利。我已被委派與任務來取代它,想做到這一點,確保更換Web服務方面的最佳實踐?
我再次知道我過於謹慎,但它是生產水平,我希望一切順利。一步一步的指導將有所幫助。
...沒有停機時間
如果你從字面上的意思是零停機時間,那麼你將需要複製你的網絡服務器,並實現某種前端,可以透明地切換請求流不同服務器。您還需要處理會話遷移。
如果您的意思是停機時間最短,那麼大多數Web容器都支持熱重新部署Web應用程序。但是,這通常需要webapp的自動關閉和重新啓動,這可能需要幾秒或幾分鐘,具體取決於webapp。此外,存在顯着的內存泄漏風險;例如的permgen空間。
回退是Web容器的完全關閉/重新啓動。
而且它不用說,你需要:
當系統包含除web應用程序以外的其他內容時,所有這些(特別是回滾)會變得更加複雜;例如數據庫。
如果這真的是一個「忙督促服務器」與「無故障時間」,那麼你將有某種形式的測試服務器,你可以得到正確的配置上。