title: How to optimize async threads in spring boot
body: <p>I have Spring Boot app running in embedded tomcat. There are around 50 concurrent HTTP sessions and each of them is served by 5-7 concurrently running async backend calls (@Async). There is no specific threads configuration for Tomcat or Spring Boot.</p>
  <p>I found that long running thread (does not not matter whether it is Tomcat or async call) seriously decreases performance of other. For example, if I generate report using CR JRC which takes 20-40 seconds, most of async threads look paralyzed.</p>
  <p>How can I optimize the code and configuration to resolve the performance issue?</p>