如何预热Java类以避免第一次调用缓慢?
2022-09-04 23:30:09
我正在做一个项目,我需要所有API调用都少于1秒,但我遇到了一个问题,即第一次调用每个路由比以下路由慢。
目前,第一次调用 /login 需要 3.6 秒,下一次调用需要 170 毫秒,对于所有其他路由也是如此。
我发现在第一次调用时使用它,类被加载到内存中,这导致了性能问题。-XX:+TraceClassLoading
但是,我没有找到一种在启动时加载所有类的简单方法,对于每个新服务,我需要在AppplicationRunner中添加一个预热调用。
有没有人有一个解决方案来自动加载SpringBoot应用程序的类或预热其所有路由?