2010-06-27 83 views
1

所以我們有一個繁忙的遺留Web服務需要被一個新的替換。傳統的Web服務是在apache tomcat服務器上使用WAR文件進行部署的。這是它被複制到Tomcat下的Web應用程序文件夾中,並且一切順利。我已被委派與任務來取代它,想做到這一點,確保更換Web服務方面的最佳實踐?

  1. 我有一個備份舊的服務
  2. 服務得到由另一個WAR文件替換爲沒有停機時間的

我再次知道我過於謹慎,但它是生產水平,我希望一切順利。一步一步的指導將有所幫助。

回答

0

...沒有停機時間

如果你從字面上的意思是零停機時間,那麼你將需要複製你的網絡服務器,並實現某種前端,可以透明地切換請求流不同服務器。您還需要處理會話遷移。

如果您的意思是停機時間最短,那麼大多數Web容器都支持熱重新部署Web應用程序。但是,這通常需要webapp的自動關閉和重新啓動,這可能需要幾秒或幾分鐘,具體取決於webapp。此外,存在顯着的內存泄漏風險;例如的permgen空間。

回退是Web容器的完全關閉/重新啓動。

而且它不用說,你需要:

  • 可複製您的生產環境的測試服務器。
  • 檢查部署到您的測試環境的嚴格程序會導致功能完整的系統。
  • 一個預先計劃好,經過測試的,有希望的防爆程序,用於在部署失敗的情況下回滾您的生產系統。

當系統包含除web應用程序以外的其他內容時,所有這些(特別是回滾)會變得更加複雜;例如數據庫。

1
  1. 做一個測試服務器
  2. 閱讀教程,直到它順利
  3. 複製你做的督促服務器上的測試服務器上有什麼玩的測試服務器。

如果這真的是一個「忙督促服務器」與「無故障時間」,那麼你將有某種形式的測試服務器,你可以得到正確的配置上。