FolkMQ v1.7.8

部署 Multiple-Proxy 模式集群说明

Multiple-Proxy 模式集群,需要启动(技术架构模型,参考: 《Socket.D 集群模式》):

  • 多个 folkmq-proxy 服务实例
    • 每个实例节点,各自独立
  • 多个 folkmq-broker 服务实例
    • 每个实例连接所有的 folkmq-proxy 服务,且自己不再启动消息端口
    • 每个实例的快照持久化数据,各自独立

1、部署示例

启动两个 folkmq-proxy 服务

java -Dserver.port=8602 -Dfolkmq.access.ak=ak1 -Dfolkmq.access.sk=sk1 -jar folkmq-proxy.jar
java -Dserver.port=8702 -Dfolkmq.access.ak=ak1 -Dfolkmq.access.sk=sk1 -jar folkmq-proxy.jar

启动三个 folkmq-server 服务(连接时多个地址用","隔开)

java -Dserver.port=8101 -Dfolkmq.proxy='folkmq://127.0.0.1:18602?ak=ak1&sk=sk1,folkmq://127.0.0.1:18702?ak=ak1&sk=sk1' -jar folkmq-broker.jar
java -Dserver.port=8102 -Dfolkmq.proxy='folkmq://127.0.0.1:18602?ak=ak1&sk=sk1,folkmq://127.0.0.1:18702?ak=ak1&sk=sk1' -jar folkmq-broker.jar
java -Dserver.port=8103 -Dfolkmq.proxy='folkmq://127.0.0.1:18602?ak=ak1&sk=sk1,folkmq://127.0.0.1:18702?ak=ak1&sk=sk1' -jar folkmq-broker.jar

client 连 folkmq-proxy 地址(连接时多个地址用","隔开)

//客户端
MqClient client = FolkMQ.createClient("folkmq://127.0.0.1:18602?ak=ak1&sk=sk1",
                                      "folkmq://127.0.0.1:18702?ak=ak1&sk=sk1")
        .nameAs("demoapp")
        .connect();

2、部署架构示意图

多了一套(或多套)副本,大大提高可用性。体系内,会采用轮询负载均衡策略