7

我有一个在嵌入式 Grizzly 上运行的 Jersey 应用程序,它的初始化如下:

HttpServer httpServer = GrizzlyServerFactory.createHttpServer(BASE_URI, rc);

我想要实现的是让正在运行的请求在关闭时完成,但不让新请求进入。我找不到通过 HttpServer 的公共方法来实现这一点的方法,甚至无法使用私有方法等(尽管它是不好,通过反射访问私有内容的解决方案也可以)

有谁知道这怎么可能?

4

1 回答 1

3

使用 Grizzly 2.3.4 是可能的;请参阅有关优雅终止灰熊运输的帖子。简而言之,使用Transport.addShutdownListener()在特定于实现的传输机制(例如、或)上实现一个GracefulShutdownListener注册。NIOTransportTCPNIOTransportUDPNIOTransport

于 2013-10-03T06:52:05.727 回答