Search code examples
jakarta-eewildflyundertowwildfly-10

Wildfly vs undertow embedded performances


I'm interested in the embedded undertow technology because then I don't have to reconfigure standalone.xml every time my project changes of machines. I can then just run the .jar.

So I have 2 questions:

  • Can I keep wildfly configuration inside a war (ssl, security, ports, datasource, driver and all the annoying stuff)? The idea would be to be able to download a fresh copy of wildfly, drop the war in it and it would just run (no need to mess with standalone.xml once again).
  • Is there a performance hit (or gain) by using an embedded server over a full blown web server like wildfly FULL? (assuming I'm importing needed jars in the war for the embedded server)

Edit: from the comment chain below

I wasn't clear enough. Say I have a web app called webapp.war. Assume I also move it around between different cloud platform. Each time I try another cloud platform, I have to redownload wildfly and reconfigure standalone.xml if I use wildfly server instead of undertow embedded. If however I use undertow embedded, I can do the configuration ONCE in the embedded server that is part of the app jar (that links to webapp.war). I wanna skip this whole configuration each time I change a cloud platform. So my 2 questions were : Is it possible to have a scenario under wildfly where the conf is part of my project and not the server. And the second question was : If I can't do that with wildfly, then I can do it with undertow embedded API. However I'm afraid there is a performance cost to that. Is that the case ?


Solution

  • Undertow is a Servlet container. By itself it doesn't know what WildFly is or how to configure anything based on the standalone.xml. If you're just wanting an executable JAR I'd suggest having a look at WildFly Swarm.