不同的Server程序实例间如何通信

最后更新于:2022-04-02 06:25:17

# 不同的Server程序实例间如何通信 [TOC] 有2种方法可以实现不同的Server程序实例间通信。 ## 额外监听一个UDP端口 * 额外监听一个UDP端口并设置`onPacket`回调,接收来自其他Server发来的消息 * `UDP`通信不是可靠的,消息可能会丢失。需要应用层发送消息接收回执 * `UDP`通信不存在阻塞IO ## 使用swoole\_client作为客户端访问Server 在`Server`程序中创建一个`TCP`客户端,连接到另外一个`Server`程序。实现`Server`与`Server`之间通信。`TCP`客户端需要实现对端`Server`约定的通信协议。可使用`Server::getClientInfo`得到客户端连接的来源`IP`实现安全防护机制。 * `TCP`通信时可靠的可以保证安全性 * 创建`TCP`客户端连接是推荐的做法,异步`Server`中创建一个异步的TCP客户端可以保证整个Server程序是纯异步的
';