我我的应用程序内运行的嵌入式服务器码头(码头6.1.24)是这样的:如何设置码头服务器的连接/请求超时?
Handler handler=new AbstractHandler()
{
@Override
public void handle(String target, HttpServletRequest request,
HttpServletResponse response, int dispatch)
throws IOException, ServletException {
//this can take a long time
doSomething();
}
};
Server server = new Server(8080);
Connector connector = new org.mortbay.jetty.nio.SelectChannelConnector();
server.addConnector(connector);
server.setHandler(handler);
server.start();
我想设置一个超时值(2秒),这样,如果handler.handle()方法需要超过2秒钟,码头服务器将超时并响应408客户端的http代码(请求超时)。
这是为了保证我的应用程序不会长时间持有客户端请求,并且总是在2秒内响应。
我做了一些研究,并用“connector.setMaxIdleTime(2000)”进行了测试;但它不起作用。
我找到了一个代码示例[here](http://eclipsesource.com/blogs/2009/10/02/executable-wars-with-jetty/)这可能对你有所帮助。 – FrVaBe 2011-05-04 20:07:42
请不要开始尝试使用码头6来解决这个问题......已经超过了多年的维护时间,并且自那时起已经有超过150个版本,请考虑使用Jetty 7,Jetty 8或甚至更好的Jetty 9。有关Jetty 9的文档,请访问https://www.eclipse.org/jetty/documentation/current/index.html – 2013-08-17 18:02:42
您是否找到了实现它的方法? - @“洪阳” – Udy 2013-12-01 12:33:22