服务器之间的通信!
工作流程这样:
客户端A 发送数据到 服务端B 但是为了做一些合法的检验,服务端B 又把数据转发到 服务端C,当 服务端C 检验数据完成了再数据返回给 服务端B ,再 服务端B 又把数据返回给 客户端A ,整个流程都使用TCP异步(非阻塞)通信。
客户端A ---> 服务端B ---> 服务端C
客户端A <--- 服务端B <--- 服务端C
服务端B 和 服务端C 的通信应该怎么做? 找了一大片都是C/S的通信,没有见到S/S通信的!
[解决办法]
那就用队列的方式,创建一个Socket与服务C连接,把客户端发来的数据加入到列表中,Socket每隔N秒或其它方式检查列表中是否有数据需要发到服务C
设置一个类型
客户端句柄
服务B中的句柄
客户端发来的数据
服务C返回的数据
socket直接把返回的数据发给客户端