部署 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、部署架构示意图
多了一套(或多套)副本,大大提高可用性。体系内,会采用轮询负载均衡策略