The formatter is overkill since it has to parse the format string each time and we are only doing concatenation here. I see String.format is use elsewhere, typically in exception and debug log calls which is ok, but this was one notable place found in my stress test with actuator enabled.
before cpu:
after cpu (most of the time is spend in toLowerCase since the concat is cheaper than the String.formatter()):
Comment From: bclozel
Thanks a lot @yuzawa-san !