Fork me on GitHub

(copied from #beginners) Having no real experience w/ Java web apps or JEE, what are the advantages of running a web app inside of an app server like Wildfly or Tomcat, as opposed to a standalone jar with an embedded http server?


@risinglight in simple terms, containers and application servers like wildfly and tomcat can execute your war files. So you could have different web applications developed separately and bundled as .war files independently and can deploy to already running instances of tomcats. More powerful application servers also have ways to 'manage' your shared resources like message queues, connection pools to databases etc. with multiple applications. Those applications don't have to create their own connection and connection pools and just ask the "containers" for those resources


Is using application server still a common thing to do these days (and either a Clojure or Java world)?


@risinglight most enterprises still use them. May be some small companies as well. My personal experience is that there is definitely increase in use of server embedded applications these days. Tomcat, Jetty, Netty, HttpKit, you name it. Spring boot template creates scaffolding project with these wired in and many people just start with that.


gotcha, thanks!


I’ve been going through http-kit, immutant, aleph, and jetty trying to figure out differences, and how they matter (if they do at all). Then there’s the app server options… even with luminus as a guide, there is still a glut of choices, and it’s easy to get suck in analysis paralysis