John Ament, a long time lurker on resteasy-dev list has put together a lightweight combination of Undertow + Resteasy + Weld called Hammock. We’ve gotten in some PRs from him to help make this a reality, hope to get more. I’m hoping somebody puts together this combination with Netty too and contributes it.
Mar 05, 2014 @ 18:16:22
Interesting. Would be cool to see how this performs vs Wildfly to get an idea of the additional overhead introduced since they both use the same components.
There was some discussion of adding Wildfly to the TechEmpower benchmark project, but it doesn’t look like it has been done yet: http://lists.jboss.org/pipermail/wildfly-dev/2014-February/001729.html
Would be awesome to see them both up there.
Mar 05, 2014 @ 21:17:56
Undertow is already on the list. There is no extra per-request magic that Wildfly adds.
Mar 06, 2014 @ 22:14:15
Whereas the undertow implementation uses a fairly low-level approach, the wildfly-ee7 implementation that was proposed makes use of JAX-RS, CDI and JPA in a container agnostic manner. Example:
Undertow Query Test Handler: https://github.com/codylerum/FrameworkBenchmarks/blob/master/undertow/src/main/java/hello/DbSqlHandler.java
Wildfly Query JAX-RS Class: https://github.com/codylerum/FrameworkBenchmarks/blob/ee7-wildfly/wildfly-ee7/src/main/java/com/techempower/ee7/tests/SingleQuery.java
I would be pretty surprised (in a good way) if the performance was the same in both cases.
I would expect performance between undertow and Wildfly to be similar if the Wildfly package used undertow’s ServletExtension mechanism to create a native Handler that bypassed the servlet handler altogether and relied on the same low-level implementation.
Perhaps the addition of both a wildfly-ee7 implementation as well as a wildfly-selvletextension implementation would be the best way to showcase Wildfly’s ability to be both Java EE compatible (with all the benefits) and extremely performant at the same time.