During upgrading a Java EE application from WildFly 13 with JDK 8 to WildFly 17 with JDK 11 we had a serious performance issue. We identified the usage of the logging framework SLF4J with the pattern `Logger log = LoggerFactory.getLogger(XXX.class)` was the reason when a lot of calls to `getLogger` occur in parallel. As workaround we added `static` to some code hotspots to get back the performance we were used to. Also WildFly 13 with JDK 8 got a performance improvement with the added `static` keyword.
Please check the VisualVM output as prove of JDKSpecific got slower:
- clones
-
JBEAP-19267 [GSS](7.3.z) LOGMGR-263 - Logger Lookup is much slower as with JDK 8
- Closed
- is incorporated by
-
JBEAP-19271 (7.2.z) Upgrade WildFly Core from 6.0.27.Final-redhat-00001 to 6.0.28.Final-redhat-00001
- Closed
-
JBEAP-19255 (7.2.z) Upgrade jboss-logmanager from 2.1.14.Final to 2.1.15.Final
- Closed
- is related to
-
JBEAP-19305 [GSS](7.2.z) WFCORE-4860 - Performance degradation with the LogContextSelector on Java 11
- Closed
- relates to
-
LOGMGR-263 Logger Lookup is much slower as with JDK 8
- Resolved
- links to