我有两个 WebSocket 服务器,可以与客户端进行出色的通信。它们位于两台不同的机器上,用 Java 实现并在 WildFly8 网络服务器中运行。我现在需要他们做的是相互沟通。这意味着:客户端向服务器 1 发送消息,服务器 1 向服务器 2 发送消息,接收回复并将其发送回客户端。
服务器在 OpenShift 中的不同应用程序上运行,我需要它们使用 websockets。或者其他一些类型的通信,但到目前为止我还没有找到任何实际工作的东西(RMI 或正常的套接字连接不起作用)。
我基本上尝试做的是在第一台服务器的 onMessage 方法中使用来自客户端的相同代码。像这样的东西:
@OnMessage
public void message(Session session, String msg){
...
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
Session NewSession = container.connectToServer(Client.class, URI.create(URL));
NewSession.getBasicRemote().sendText("Routed :" + input);
...
}
但是,服务器没有连接到另一台服务器,我不知道为什么。有什么建议么?
谢谢!