假设如果我想要开发一个windows聊天应用程序,那么还需要开发一个聊天服务器和客户端。在开发了聊天服务器应用程序后,我们可以在一台机器上运行该应用程序,聊天客户端将运行另一台pc。如果这些pc不在同一网络中,假设聊天服务器在美国机器上运行,一个聊天客户端在德国机器上运行,另一个在英国机器上运行。在这种情况下,如何使用互联网进行交流。所有的机器都可以访问互联网,那么一个聊天客户端如何登录到聊天服务器,以及两个聊天客户端如何相互通信。我只想知道如何通过聊天服务器将数据从一个客户端传输到另一个客户端。请给我的概念或它会更好,如果有人给我一个任何好的基于.net的聊天应用程序的参考,其中聊天服务器和聊天客户端将是there.........thanks。
发布于 2011-01-18 02:09:56
客户端轮询服务的
发布于 2011-01-18 02:15:44
一般来说?我不明白这与C#有什么关系,但是客户端-服务器架构看起来像这样:
Client <-----> Server对于描述两个或多个客户端相互通信的情况,您只是在讨论添加多个客户端:
Client A <----
|
----> Server
|
Client B <----如果客户端A想要向客户端B发送消息,则客户端A将带有某种信息的消息发送到服务器,表明该消息是发往客户端B的。服务器然后检查该消息,确定该消息是发往客户端B的,然后通过连接将该消息中继到客户端B。
这是客户端-服务器架构的基本定义。还有一些更高级的架构,将客户端-服务器和点对点混合在一起,比如Skype。在混合系统中,从客户端到服务器的连接通常只传送控制消息(身份验证等)并且请求关于如何直接联系另一客户的信息。这种方法的优点是,它不需要A和B之间的所有通信都流经服务器;A和B都连接到服务器,但它们会询问服务器如何彼此直接连接,然后使用该直接连接进行带宽密集型通信。
不过,这些都是次要的,真的。在开始开发应用程序之前,您应该先阅读独立于任何特定语言或环境的客户端-服务器体系结构。
https://stackoverflow.com/questions/4716279
复制相似问题