如题所述
通过中转服务器。
服务器和客户端是一对多的关系。即,一个客户端只能连接一个服务器,一个服务器可以被多个客户端连接。
所以,多个客户端之间的通讯,可以通过他们连接的共同服务器来完成。
客户端1和客户端2都连接了服务器1,那么客户端1可以发送消息到服务器1,让服务器1把消息发给客户端2。
一个程序里可以启动多个客户端或服务器,所以程序是他包含的客户端或服务器老大。
比如,一个程序里有2个服务器,分别有多个客户端与这2个服务器中之一连接。那么,比如有2个客户端就算他们连接的分别是这个程序里的不同服务器,但程序可以通过调用实现这2个客户端通讯。客户端1与程序里服务器1连接,客户端2与程序里服务器2连接,那么收到客户端1发送数据到服务器1,程序收到后通过调用服务器2把它发给客户端2。
每端都有客户和服务器,那么这样也可以建立双向连接。客户端连接服务器后,让服务器里的客户端也连接客户端。当然这种设计少。但如果多个服务器在一个程序里通过程序调用即可,如果不在一个里面,那么服务器端放个客户与另一个服务器连接,来建立服务器到服务器的通讯。
说了这么多,应该明白了。就是多建连接线路的问题。
服务器和客户端是一对多的关系。即,一个客户端只能连接一个服务器,一个服务器可以被多个客户端连接。
所以,多个客户端之间的通讯,可以通过他们连接的共同服务器来完成。
客户端1和客户端2都连接了服务器1,那么客户端1可以发送消息到服务器1,让服务器1把消息发给客户端2。
一个程序里可以启动多个客户端或服务器,所以程序是他包含的客户端或服务器老大。
比如,一个程序里有2个服务器,分别有多个客户端与这2个服务器中之一连接。那么,比如有2个客户端就算他们连接的分别是这个程序里的不同服务器,但程序可以通过调用实现这2个客户端通讯。客户端1与程序里服务器1连接,客户端2与程序里服务器2连接,那么收到客户端1发送数据到服务器1,程序收到后通过调用服务器2把它发给客户端2。
每端都有客户和服务器,那么这样也可以建立双向连接。客户端连接服务器后,让服务器里的客户端也连接客户端。当然这种设计少。但如果多个服务器在一个程序里通过程序调用即可,如果不在一个里面,那么服务器端放个客户与另一个服务器连接,来建立服务器到服务器的通讯。
说了这么多,应该明白了。就是多建连接线路的问题。
温馨提示:答案为网友推荐,仅供参考