栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Tomcat 7异步处理失败-仅同时处理一个请求

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Tomcat 7异步处理失败-仅同时处理一个请求

好的,作为研究的一部分,我编写了测试程序,该程序打开了与tomcat的多重连接,并在异步servlet上进行了GET /
POST。我已经调试并重新检查了server.xml配置,有限的线程池以更好地查看测试结果等。现在,我的连接器配置如下所示:

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"     minProcessors="3"    maxProcessors="8"    maxThreads="20"    connectionTimeout="150000"     asyncTimeout="150000" />

这正在工作!我已经使用NIO进行了测试,一次完成了1000个连接,并且一次都处理了所有连接。

但是,我描述的效果仍然存在于浏览器中。当我尝试在10个选项卡上加载servlet时,第一次加载而不是第二个加载。等等。这似乎是浏览器的行为,服务器上没有任何阻塞。当我打开3个浏览器(Firefox,Chrome,Opera)时,我一次处理了3个连接。

因此,Servlet API 3.0中定义的异步处理可在Tomcat
7上运行,但是,必须使用自己的程序进行测试,而不能在浏览器中使用多个选项卡…在多个选项卡中测试COMET聊天也无法按预期进行。但是,在实际示例中,一台计算机将仅打开一个连接。而且,浏览器的行为也不是任何服务器的错误。

编辑 后的Spring
MVC溶液纳入Web应用程序,异步处理模式被停止(从web.xml中参数被忽略)。但是,可以通过添加以下行来手动设置异步支持:

request.setAttribute("org.apache.catalina.ASYNC_SUPPORTED", true);


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/616034.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号