Tomcat 8 速度会随着时间的推移而降低

Tomcat 8 speed gets degraded over time

我正在使用 Tomcat 8.5 来托管用于 java REST 服务的 WAR。

在我的休息服务中,我创建了一个连接并从用户那里获取了一个多部分表单数据文件,使用扫描引擎对其进行了扫描,然后 return 结果。一开始,tomcat 很好 运行,速度接近 57-58 Mbps,但随着时间的推移会下降(在 5-8 分钟内下降到近一半)

我的 setenv.bat 文件如下所示。

"set "JAVA_OPTS=%JAVA_OPTS% -Xms1024m -Xmx5120m -XX:MaxMetaspaceSize=512m -Xincgc -server""

JVM 正在使用 ParNewGC 进行垃圾回收。

我的 server.xml 文件看起来像这样

<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
        maxThreads="100" minSpareThreads="8" maxSpareThreads="10" acceptorThreadCount="16" acceptCount="500"/>



    <!--acceptCount :The maximum queue length for incoming connection requests when all possible request processing threads are in use. Any requests received when the queue is full will be refused. The default value is 100. 



    A "Connector" represents an endpoint by which requests are received
         and responses are returned. Documentation at :
         Java HTTP Connector: /docs/config/http.html
         Java AJP  Connector: /docs/config/ajp.html
         APR (HTTP/AJP) Connector: /docs/apr.html
         Define a non-SSL/TLS HTTP/1.1 Connector on port 8080
    -->
    <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" socket.rxBufSize="10000000" socket.txBufSize="3000000" socket.directBuffer="true" />
    <!-- A "Connector" using the shared thread pool--> 

因为我的回复是完全动态的。我没有使用任何类型的缓存。请帮我解决这个问题。

由于打开tcp/ip个连接,可能是错误。尝试与服务器连接一次,并发送数据检查套接字,当您看到性能下降。

在windows中,您可以使用netstat-an检查打开的套接字。