编程语言
首页 > 编程语言> > java – 是否应该从服务器更改HTTP客户端的异步响应?

java – 是否应该从服务器更改HTTP客户端的异步响应?

作者:互联网

最近我使用以下配置为我的Servlet配置了异步处理

<async-supported>true</async-supported>

我的问题是,这个变化对HTTP客户端是否透明?我的客户端不是Web浏览器.它是一个发出HTTP请求的硬件设备,我无法控制客户端功能.

P.S – 问题来自于我最近听说过非同步的http客户端.

解决方法:

简单回答是不.

仅提供新的异步机制以更好地利用服务器计算机上的线程.就客户而言,没有变化.

即使在早期,如果您使用AJAX,客户端也会使用回调以异步方式处理请求.因此,异步客户端首先出现.如果服务器在接收来自客户端的http请求时想要执行耗时的操作,那么它现在也可以使用异步机制.

请注意,即使在异步世界中,服务器也不能做太费时间的事情,因为客户端可能不会等待很长时间才能使服务器响应.

有关异步如何在服务器端工作的信息,这里有一个链接:
I don’t understand Async support in servlets 3.0 API

编辑:

通过异步支持,由于服务器现在可以暂停响应并执行其他有用的操作,因此您可以设计客户端 – 服务器应用程序,其中客户端要求服务器“在发生有趣事情时稍后进行响应”.因此,AJAX请求可以打开5到10分钟,如果在那段时间发生某些事情,服务器可以响应(并关闭连接).在这5分钟的窗口期间,服务器中不会​​有线程被阻塞.

换句话说,人们可以基于迟到的服务器API设计应用程序.以下是有关此技术的更多信息:Ajax Long Polling

标签:java,http,asynchronous,servlets,servlet-3-0
来源: https://codeday.me/bug/20190628/1317071.html