【问题标题】:Why are Tomcat's threads more costly than background threads?为什么Tomcat的线程比后台线程成本更高?
【发布时间】:2012-11-29 00:28:37
【问题描述】:

我参考了以下博客条目:blog entry 关于 Spring MVC 3.2 异步支持。

我了解 Tomcat 使用线程池来服务 http/web 请求。此外,上面的文章似乎表明 Spring MVC 异步支持减轻了 Tomcat 的线程池,并且 通过使用后台线程实现了 webapp 中更好的并发 用于“繁重”操作.

任何人都可以就为什么会这样提供明智的建议吗? 为什么从 tomcat 线程池中提取的“前端”线程比后台线程成本更高?

【问题讨论】:

    标签: tomcat spring-mvc asynchronous threadpool


    【解决方案1】:

    它并不是“成本更高”,但它是用于处理传入请求的相对稀缺资源,因此不建议在其中执行其他类型的繁重工作。

    【讨论】:

    • 如果它们的成本不高,那么一种天真的方法可能只是增加池中的线程数而不是使用 Spring 异步支持?
    • 实际上,我不确定响应会更快地发送给用户(就像服务级别的 @Async 注释而不是控制器级别的异步支持一样,这就是我说的是这里)。我确实尝试了提供的示例,并且浏览器实际上在处理期间挂起。不同之处在于它是执行处理的后台线程。你明白我的意思吗?
    猜你喜欢
    • 1970-01-01
    • 2011-01-15
    • 2014-04-23
    • 2014-07-21
    • 1970-01-01
    • 2011-08-09
    • 2021-11-16
    • 2015-07-09
    • 1970-01-01
    相关资源
    最近更新 更多