我正在尝试使用比 JBoss 的默认 HTTP/1.1
连接器“更好”的 HTTP 连接器。正在关注BalusC's recommendations ,我将 server.xml
中的连接器更改为:
<Connector protocol="org.apache.coyote.http11.Http11NioProtocol"
port="8080" address="${jboss.bind.address}"
connectionTimeout="20000"
redirectPort="8443"
compression="force" />
但是 JBoss 在启动时抛出一个 ClassNotFoundException
- 我一定是缺少一个 JAR。 (看起来 NIO 连接器需要 Tomcat 6,但我找不到 JBoss 5.1 附带的 Tomcat 版本...提示,@#$%^ing JBoss 文档/子>)
11:43:19,034 ERROR [Connector] Protocol handler instantiation failed: java.lang.ClassNotFoundException: org.apache.coyote.http11.Http11NioProtocol from BaseClassLoader@1ed3e5f ... blah blah blah ...
11:43:19,263 INFO [AprLifecycleListener] The Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files (x86)\Java\jre6\bin; ... lots more classpath stuff...
经过一系列谷歌搜索后,看起来这可能不是正确的连接器。 This jboss.org thread让我觉得我应该改用 APR 连接器。也就是说,我真的看不出两者之间的区别。
哪个连接器是正确的,如何正确设置它?
最佳答案
Nio 连接并不比标准连接器好。它只是具有非阻塞功能。
APR-connector 是本地实现,因此应该会更快一些。它还更好地支持 SSL(更多配置选项和加密)。
APR-connection 的配置取决于tomcat 的版本。
要找出 tomcat 的版本,请创建一个包含以下内容的 JSP 文件:
<%= application.getServerInfo() %>
关于tomcat - 在 JBoss 5.1 中使用其他 HTTP 连接器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3686238/