Servlet
仅第一个请求响应时间慢
响应时间
第一个 请求
是 10.5 秒。
进一步请求
2.5 秒。
从一些 java
资源中,我了解到 servlet
在第一个 请求期间第一次加载所需的
并为进一步的 classes
requests
重复使用相同的内容,因此 delay
修复 1:
在执行 init()
方法后,我立即在 servlet
中创建了一个 dummy request
。
响应时间:对于通过用户代理的所有请求,响应时间为 2.5 秒。
修复 2:
我尝试在 servlet
startup
中加载可能的 classes
响应时间:第一个请求
是6秒。其他请求为 2.5 秒。
是否还有其他实现相同目标的可能性,因为我相信当应用程序的 URL(端口号、资源路径等)发生变化时,方法 1 需要更改代码,并且方法 2 的响应时间不够。
我已经为我的 servlet
设置了 loadOnStartup=1
。
最佳答案
您还可以在 web.xml 中使用 load-on-startup 参数在启动时加载和启动您的 servlet。
<servlet>
<servlet-name>MyServlet</servlet-name>
<display-name>My Servlet</display-name>
<servlet-class>com.foo.MyServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
关于java - 第一次请求的 servlet 响应时间很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36548778/