Spring Websocket 多代理中继地址?

Spring Websocket mutiple broker relay addresses?

我有一个 RabbitMQ 服务器集群。我想将我的 spring 启动应用程序(使用 websockets)的 StompBrokerRelay 请求负载平衡到集群中的节点,但我看不到在哪里可以使用 MessageBrokerRegistry 设置地址列表。现在配置如下所示:

  @Override
  public void configureMessageBroker(MessageBrokerRegistry config) {
    config
        .enableStompBrokerRelay("/exchange")
        .setAutoStartup(true)
        .setVirtualHost(BROKER_VHOST)
        .setRelayHost(BROKER_HOST)
        .setRelayPort(BROKER_PORT)
        .setClientLogin(BROKER_CLIENT_LOGIN)
        .setClientPasscode(BROKER_CLIENT_PASSWORD)
        .setSystemLogin(BROKER_SYSTEM_LOGIN)
        .setSystemPasscode(BROKER_SYSTEM_PASSWORD);
  }

有什么方法可以 .setRelayHosts() 还是我需要寻找另一个框架,或者,天哪,尝试骗取这些东西以与多个主机一起工作。

现在不可能。 Spring websocket 有点不成熟。

勾选https://docs.spring.io/spring-framework/docs/current/reference/html/web.html#websocket-stomp-handle-broker-relay-configure。如果您希望提供多个地址,在每次尝试连接时,您可以配置一个地址供应商,而不是固定的主机和端口。本节末尾还包含代码片段。