嵌入Jetty 9并自定义套接字地址,端口和ThreadPool?

时间:2015-05-12 09:13:27

标签: jetty threadpool

我以前在我的应用程序中使用Jetty 8.1.14作为嵌入式Web服务器。现在我正在尝试升级到9.2.10版本。

使用Jetty 8,可以使用" SelectChannelConnector"中的setter来指定主机地址和端口。或者" SslSelectChannelConnector",以及ThreadPool作为" Server"中的构造函数参数。类。

现在,似乎只能在" Server"中指定一个或另一个。类。只有地址和/或端口的构造函数变体,或者要使用的ThreadPool。我无法找到所有三个参数的变体。

如何使用Jetty 9指定所有这些参数? 我试过了:

String bindAddress = "myValue";
int port = 12345;
Server s = new Server(new InetSocketAddress(bindAdress, port));

ThreadPool t = MyHighlyCustomizedThreadPool();
Server s = new Server(t);

1 个答案:

答案 0 :(得分:0)

使用ServerConnector设置监听端口,设置监听主机地址,设置空闲超时和设置默认协议。一旦启动,相同的连接器可用于确定实际侦听端口(如果使用动态分配的端口),实际侦听主机(如果使用动态主机地址)等等...

使用HttpConfiguration设置缓冲区,安全标识(用于安全重定向),调整标题,供电,服务器版本公告等。

使用ConnectionFactory实现来控制协议选择的进展如何与最近接受的传入连接一起使用。 (是的,这在今天的Web基础设施中非常重要)

有关HTTP / 1.1和SSL + HTTP / 1.1(也称为HTTPS)的基本示例,请参阅ManyConnectors.java嵌入式示例

有关使用SPDY的ConnectionFactory行为的示例,请参阅SpdyConnector.java示例(注意:已弃用SPDY,而不支持Jetty 9.3.x中的HTTP / 2)

有关使用TLS + ALPN + HTTP / 2的ConnectionFactory行为的示例,请参阅Http2Server.java示例(注意:您为此需要Jetty 9.3.x)< / em>的