【发布时间】:2011-09-28 12:59:28
【问题描述】:
阅读RESTful 文档,似乎不可能实现异步实例,但有人可能更了解SO。
我的意思是我想异步执行服务请求:
@Path("/helloworld", asyncSupported=true)
public class MyHelloWorldService {
...
}
我知道asyncSupported 没有在@Path 中定义,但我正在寻找类似于@WebServlet 的东西。然后,我想使用 AsyncContext 实例(或任何等价物)。
这可能吗?
【问题讨论】:
-
为什么不使用 AJAX 来异步调用你的 RESTful 方法?
-
@The 因为实现了 AsyncContext 是为了解决 Servlet 中每个请求线程过多的问题。使用 Ajax 调用 RESTful 不会解决这个问题(在服务器端)。想法/解决方案是将请求排队以在有限的线程集上进行处理(有点像 Nginx)。
-
您可能想在java.net/projects/jersey/lists/users/archive 列表中提问。 IIRC Jersey 前段时间曾尝试过期货。不确定这是否进化了。
-
您可能希望从 Apache ServiceMix 中获得灵感。
-
您是在问这在您的库中是否可行,或者一般如何解决 REST 接口中的异步问题?
标签: java web-services rest asynchronous jax-rs