Tomcat Paralel Dağıtım, eski uygulamaları otomatik olarak çöz


10

Tomcat 8'in Paralel Dağıtımını bir süredir sıfır kesinti süresi olmayan sürekli dağıtım kurulumunun bir parçası olarak kullanıyorum.

Test eldiveni çalıştırıldığında, CI sunucusu .war dosyasını otomatik olarak ## {version-number} .war uygulamasına yeniden adlandırır ve savaşı / webapp klasörüne kopyalar. uygulama ## 333, uygulama ## 332 ile iyi bir şekilde bir arada bulunacaktır.

Karşılaştığım tek sorun, tüm trafiği (yeni oturumlar) otomatik olarak yenisine geçtikten sonra eski uygulamaları manuel olarak çözmek zorunda kalmam.

Tomcat'in "hey, bu hizmet sıfır seansa indiğinde kaldırılması gerektiğini" söylemek için yerleşik bir mekanizması var mı? Belki bir tür "son oturumun süresi doldu" olayına tıklayabilirim.

Başka biri bu tür bir uygulamanın çözülmesini otomatikleştirdiyse, bunu duymak isterim. Teşekkürler!

Yanıtlar:


9

Tomcat'i eski uygulamaları kaldıracak şekilde yapılandırabilirsiniz. undeployOldVersionsÖzniteliği Hostöğeye eklemeniz ve ayarlamanız gerekir true. Server.xml dosyasındaki sunucunuzu aşağıdaki gibi bir şeye değiştirmeniz gerekir:

<Host undeployOldVersions="true" ...>
   ...
</Host>

Ayrıntılar için Ana Bilgisayar belgelerine bakın. Özellikle, bu yalnızca otomatik dağıtım etkinleştirildiğinde çalışır.


Tomcat'in hangi sürümü altında çalışıyorsunuz? Tomcat 8.5.6 kullanıyorum ve bu çalışmıyor. FarmWarDeployer'ı etkinleştirdim ve yeni sürümler otomatik olarak dağıtıldı. Ancak, Host etiketinde undeployOldVersions etkinleştirildikten sonra, eski savaş dosyaları (ve dağıtımları) silinmez.
Piko

Tomcat 8 ile ilgili ilerleme var mı?
JimmyD

1
Özellik Tomcat 8 için uygulanır. FarmWarDeployer kullanırken sorunlar görüyorsanız, yeniden oluşturma adımları ile bir hata açın, böylece bakılır.
Mark Thomas
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.