【发布时间】:2012-08-07 08:20:18
【问题描述】:
我有一个 servlet,我想通过 unix 域套接字连接到,因为由于安全策略,我无法开始侦听新的 TCP 端口。不幸的是,我一直找不到可以通过 unix 域套接字提供服务的 servlet 容器。到目前为止,我已经看过 Tomcat 和 Jetty。
【问题讨论】:
我有一个 servlet,我想通过 unix 域套接字连接到,因为由于安全策略,我无法开始侦听新的 TCP 端口。不幸的是,我一直找不到可以通过 unix 域套接字提供服务的 servlet 容器。到目前为止,我已经看过 Tomcat 和 Jetty。
【问题讨论】:
首先,您需要弄清楚如何在 java 上支持 unix 域套接字。
之前的问题解决了这个问题。 UNIX Domain Socket in Java 和 UNIX socket implementation for Java?
看起来 junixsocket 可能能够将自己呈现为 Socket,如果是这种情况,那么您将想看看是否可以使用各种引导类路径工具替换默认的 Java java.net.Socket 实现。到那时,任何支持经典 Sockets 的东西,比如(早期版本的)Jetty 及其 SocketConnector(不是 NIO 或 SSL)都应该(理论上)工作。
【讨论】:
我不相信 JVM 将 UNIX 域套接字公开给任何 Java 代码。如果您想使用 UNIX 域套接字,我认为您必须编写自己的本机代码来侦听并将字节代理到容器。这听起来可行,但肯定不愉快。
【讨论】: