Spring Boot Embedded Tomcat Performance

Multi tool use
Multi tool use


Spring Boot Embedded Tomcat Performance



I am developing Microservices API for my application. I started with Spring Boot application. I created two artifacts - "business code with embedded tomcat" and "business code without embedded tomcat".



When I compare the performance results, I can see that the "non-embedded tomcat" (i.e. executing on standalone tomcat) gives good output because of native execution.



So basically what is the difference between the embedded tomcat and the standalone tomcat regarding implementation?



How the performance varies between two executions?





How you did the tests? Could you explain? Thanks.
– Rudge
Oct 30 '16 at 18:46





@Rudge: Using Jmeter i simulated load on both scenarios. I am using camel in my business-code. At the end of transaction, i am printing message history which displays route info with execution time. when i compare execution time for both secanrio at least i am getting 20ms average delay on embedded tomcat .
– Peter Jerald
Nov 1 '16 at 4:27




1 Answer
1



I found out actual root cause of this issue.



APR (Apache Portable Runtime) plays important role in tomcat thread execution.



By Default, embedded tomcat executes NIO. NIO and BIO are Java based executions whereas APR is native execution. When we compare performance of NIO and APR, APR is pretty much faster.



In fact all the Linux based tomcat bundles are shipped with APR libs under the tomcat lib folder.



After I enabled APR in embedded tomcat (i.e. Spring Boot) performance execution was same compared to standalone tomcat.



http://tomcat.apache.org/tomcat-7.0-doc/apr.html





hi @Peter Jerald, could you please share me how you enable APR in embedded tomcat?
– Ace.Yin
Dec 6 '16 at 8:31





@Ace.Yin here is how: gist.github.com/andreldm/7f89a3279438467a0bd41e6c1249d014
– AndreLDM
Feb 1 '17 at 12:25






By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

5Biu bjV8c8XZffmRO JXzk09GWs3v8y2SHFy8KMaPsnfvpu xW
H6MrWqvKsbj,6m9yCLFBaIPRj1GdiTwSPwC

Popular posts from this blog

Rothschild family

Cinema of Italy