Register now or log in to join your professional community.
What is Hot Deployment ?
Hot-deployable services are those which can be added to or removed from the running server. It is the ability to change ON-THE-FLY what’s currently deployed without redeploying it.
Hot deployment is VERY hot for development. The time savings realized when your developers can simply run their build and have the new code auto-deploy instead ofbuild, shutdown, startup is massive.
What is cold Deployment ?
Cold deployment are defined as tasks that require one or more instances of the server to restart to reflect the changes.
Cold deployment is slow but stable:
Stop JBoss AS
Optionally delete data/, log/, tmp/, work/
Redeploy your application(s)
Start JBoss AS
Pros and cons :
Hot Deployment -
Pros
1) It prevents you from manual restart of production server if you made any changes to the contents of the war file being deployed.
2) Business never stopped .
Cons
1) Hot deployment deploys simultaneously to all the nodes, resulting in down time.
2) Hot (re)deployment of my application sometimes results in OutOfMemory errors.
Cold deployment -
Pros
No caching + also no out of memory issues after subsequent deploys during testing.
Cons
Outage cost is more being lengthy process
I also recommand to read these best practices for deployment here : Docs Oracle it should answer your second part of the question.