Grails-Servlet3.0异步请求处理
我今天发现了Servlet3.0异步工具。我已经读过了,并且认为我理解了这个概念 我想知道:这会对“标准”控制器的操作产生任何影响吗?还是应该保存它以供web服务或广泛的计算过程使用 换句话说,在控制器的所有动作上使用它,而不事先考虑动作方法的计算时间,这是一个坏主意吗? 如果是,你能解释一下原因吗Grails-Servlet3.0异步请求处理,grails,asynchronous,controller,httprequest,servlet-3.0,Grails,Asynchronous,Controller,Httprequest,Servlet 3.0,我今天发现了Servlet3.0异步工具。我已经读过了,并且认为我理解了这个概念 我想知道:这会对“标准”控制器的操作产生任何影响吗?还是应该保存它以供web服务或广泛的计算过程使用 换句话说,在控制器的所有动作上使用它,而不事先考虑动作方法的计算时间,这是一个坏主意吗? 如果是,你能解释一下原因吗 先谢谢你 不,这不是个好主意 在控制器操作中,您收到一个请求并希望尽快提供响应。您只能对可以延迟的事情使用异步 如果用户在您的网站上请求一个页面,您不能使用空页面进行响应,然后进行回推以更新他的页面
先谢谢你 不,这不是个好主意 在控制器操作中,您收到一个请求并希望尽快提供响应。您只能对可以延迟的事情使用异步
如果用户在您的网站上请求一个页面,您不能使用空页面进行响应,然后进行回推以更新他的页面。我只会将此功能用于AJAX请求,甚至不会用于所有请求。您必须决定什么是异步运行,什么不是异步运行 不,这不是个好主意 在控制器操作中,您收到一个请求并希望尽快提供响应。您只能对可以延迟的事情使用异步
如果用户在您的网站上请求一个页面,您不能使用空页面进行响应,然后进行回推以更新他的页面。我只会将此功能用于AJAX请求,甚至不会用于所有请求。您必须决定什么是异步运行,什么不是异步运行 您应该阅读Grails文档以了解 通常,对于快速执行的控制器操作,异步处理请求的好处不大。但是,对于长时间运行的控制器操作,这是非常有益的 原因是,对于异步/非阻塞响应,一个线程==一个请求==一个响应关系被破坏。容器可以使客户端响应保持打开和活动状态,同时将线程返回到容器以处理另一个请求,从而提高可伸缩性
希望这应该足够清楚,但是如果有什么不清楚的地方,请询问。您应该阅读Grails文档以了解更多信息 通常,对于快速执行的控制器操作,异步处理请求的好处不大。但是,对于长时间运行的控制器操作,这是非常有益的 原因是,对于异步/非阻塞响应,一个线程==一个请求==一个响应关系被破坏。容器可以使客户端响应保持打开和活动状态,同时将线程返回到容器以处理另一个请求,从而提高可伸缩性
希望这足够清楚,但请询问是否有不清楚的地方。大多数流行的Java web容器一次可以处理多个请求吗?也就是说,如果一个请求被阻塞,在原始请求完成之前,是否会将所有未来的请求放入一个队列中?对我来说,这将是使用ayncs的主要原因:释放服务器。大多数流行的Java web容器一次可以处理多个请求吗?也就是说,如果一个请求被阻塞,在原始请求完成之前,是否会将所有未来的请求放入一个队列中?对我来说,这将是使用ayncs的主要原因:释放服务器。