gpt4 book ai didi

multithreading - 带有 Jersey 的异步 REST API

转载 作者:行者123 更新时间:2023-11-28 21:47:44 24 4
gpt4 key购买 nike

我们将 Jersey 用于 REST 网络服务(部署在 tomcat 上)。

我知道

  • Tomcat 的 HTTP 连接器有一个线程池,用于读取 HTTP 请求并转发到 Jersey。
  • 转发到 Jersey 是同步的。

我读了here Jersey 提供 AsyncService 以最大化并发性。

问题:为什么 Jersey 的异步设计迫使开发人员将 REST 处理卸载到单独的线程/可运行,而 Jersey 可以通过专用/私有(private)执行程序池自行完成?

这是为了更好地控制开发人员还是我在这里遗漏了什么?

最佳答案

Why does Jersey's async design force developer to offload REST processing to separate thread/runnable, while Jersey can do this by itself with a dedicated/private executor pool?

你不是被迫的。 Jersey 有 @ManagedAsync你可以把你的方法。这正是您所要求的

ManagedAsync

Indicates that the resource method to which the annotation has been applied should be executed on a separate thread managed by an internal Jersey executor service.

@GET
@ManagedAsync
public void longGet(@Suspended final AsyncResponse ar) {

}

另请参阅:

关于multithreading - 带有 Jersey 的异步 REST API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40470773/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com