Spring引导http请求打开永不关闭的线程

时间:2017-07-25 20:44:34

标签: java multithreading spring-boot out-of-memory undertow

我试图在发布之前对我的启动应用程序进行一些性能测试,所以我正在运行一些测试以查看内存使用情况,线程数等等。我注意到,当我向应用程序的端点发出http请求时(包括驱动端点)我看到" XNIO-2 task-n"线程被创建并且永远不会被清理。

  1. java version =" 1.8.0_66"
  2. Gradle version = 3.5
  3. springBootVersion =' 1.5.4.RELEASE'
  4. 服务器=承诺
  5. Rest控制器和服务都不会打开任何其他线程。 我看过以下内容: https://github.com/googlemaps/google-maps-services-java/issues/261但我没有使用GeoApi。

    Name: XNIO-2 task-46
    State: WAITING on  java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@7155b807
    Total blocked: 0  Total waited: 1
    
    Stack trace: 
    sun.misc.Unsafe.park(Native Method)
    java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
    java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
    java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
    java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    java.lang.Thread.run(Thread.java:745)
    

    只要没有提出http请求,线程数保持不变,是否有人知道会导致此问题的任何已知问题?

0 个答案:

没有答案