客户端-服务器模型
客户端-服务器模型描述了一个服务器如何向一个或多个客户端提供资源和服务。服务器的示例包括Web 服务器、邮件服务器和文件服务器。这些服务器分别向客户端设备提供资源,例如台式计算机、笔记本电脑、平板电脑和智能手机。大多数服务器与客户端之间是一对多关系,这意味着一台服务器可以同时向多个客户端提供资源。
当客户端请求与服务器建立连接时,服务器可以接受或拒绝该连接。如果连接被接受,服务器会通过特定的协议与客户端建立并维持连接。例如,电子邮件客户端可能会请求与邮件服务器建立SMTP连接,以便发送邮件。随后,邮件服务器上的 SMTP 应用程序会要求客户端进行身份验证,例如提供电子邮件地址和密码。如果这些凭据与邮件服务器上的某个帐户匹配,服务器就会将邮件发送给指定的收件人。
在线多人游戏也使用客户端-服务器模型。一个例子是 Blizzard 的 Battle.net 服务,该服务托管《魔兽世界》、《星际争霸》、《守望先锋》等在线游戏。当玩家打开 Blizzard 的应用程序时,游戏客户端会自动连接到 Battle.net 服务器。玩家登录 Battle.net 后,可以查看其他在线玩家、与其他玩家聊天,以及与其他玩家进行对战或组队比赛。
虽然 Internet 服务器通常会同时为多个客户端提供连接,但每台物理计算机能够处理的流量都是有限的。因此,热门在线服务会使用一种称为分布式计算的技术,将客户端分配到多台物理服务器上。在大多数情况下,用户连接到哪一台具体的机器并不重要,因为这些服务器都提供相同的服务。
NOTE: 客户端-服务器模型可以与P2P模型进行对比。在 P2P 模型中,客户端彼此直接连接。P2P 连接不需要中央服务器,因为每台机器既充当客户端,也充当服务器。
测试你的知识