嵌入式码头的多个实例

时间:2011-07-07 11:34:11

标签: java sockets networking jetty embedded-jetty

我使用maven构建配置(jetty:run)从eclipse运行嵌入式jetty。服务器正常启动:

2011-07-07 13:48:11.915:INFO::Started SelectChannelConnector@0.0.0.0:8080 STARTING

[INFO] Started Jetty Server

[INFO] Starting scanner at interval of 10 seconds

之后,我启动了另一个侦听同一端口的实例(8080)。它也开始正常。多个实例同时运行和侦听同一端口的可能性如何?顺便说一句,我的Web应用程序工作正常,所有请求都转到第一个实例,关闭后,请求跟随第二个实例。 感谢

1 个答案:

答案 0 :(得分:3)

这是SelectChannelConnector的行为,它使用java.nio个选择器而不是java.net.Socket。我不确定如何或为什么允许两个实例“监听”到同一个端口(我甚至不确定“listen”是否是用于java.nio的正确单词)。但是,您看到的行为是一致的 - 第二个SelectChannelConnector将在第一个消息停止后开始接收消息。

您可以将SelectChannelConnector替换为SocketConnector来重现“传统”行为。