Using front-end proxy server (nginx/apache httpd) + application server (tomcat) * 2.
Normally, both servers are online to distribute traffic and pressure. When deploying, deploy alternately. Adjust the proxy server, only proxy to one of them, and take the other offline. When the deployment of this one is completed, reverse the process.
If there are not two application servers, then when the deployment is complete, temporarily find a machine at hand to copy the online project to it and replace it temporarily. User access will probably be slower, but it should be OK.
Using front-end proxy server (nginx/apache httpd) + application server (tomcat) * 2.
Normally, both servers are online to distribute traffic and pressure. When deploying, deploy alternately. Adjust the proxy server, only proxy to one of them, and take the other offline. When the deployment of this one is completed,
reverse the process.
If there are not two application servers, then when the deployment is complete, temporarily find a machine at hand to copy the online project to it and replace it temporarily. User access will probably be slower, but it should be OK.
You can learn about this project: Spring loaded. Does it meet your needs? This can be hot deployed.