客户端
- 在计算机领域中,客户端一词是指在计算机网络的客户-服务器体系结构中使用服务器提供的服务的任何硬件或软件。在大多数情况下,服务器位于与客户端软件或硬件不同的系统上。
- 客户端请求服务器提供访问服务。服务器负责向用户提供请求的资源或服务。客户端设备通常包括个人计算机、桌面计算机、笔记本电脑或智能手机。
- 客户端依赖于服务器。部分操作取决于向另一个程序或系统发送请求。由其他程序或系统决定是否向客户端提供对服务或资源的访问。
- 例如,Web浏览器充当客户端,提供服务的Web服务器充当客户端。它们从互联网检索网页并在用户屏幕上显示。
- 电子邮件客户端可以通过向邮件服务器发送请求来访问他们的电子邮件。用于在线聊天的软件具有各种客户端,可以与用于促进对话的聊天协议不同。
- 在线多人游戏也在客户端运行。术语“客户端”也用于运行客户端软件的设备。
- 客户端是各种服务渲染应用程序中使用的重要组成部分。客户端和服务器可以在同一台计算机上运行,但通常位于不同的计算机上。客户端和服务器之间的通信是通过使用进程间通信技术进行的。
- 当客户端和服务器应用程序通过Internet套接字连接时,应用程序可以使用Internet协议套件从远程系统连接到服务。潜在的客户端进行通信的启动。但响应取决于服务器。
- 该术语最初是用于执行独立应用程序的设备。程序可以通过将其与网络连接来与远程系统交互。这些系统在分时共享的大型机系统中是客户端。
计算机中的客户端类型
Client Type | Dependent on Local Storage | Dependent on Local CPU |
---|---|---|
Fat Client | YES | YES |
Diskless Node | NO | YES |
Thin Client | NO | NO |
计算机网络中的客户端可以分为以下三种类型:
- 厚客户端
- 薄客户端
- 无盘节点
厚客户端
厚客户端通常被称为富客户端或胖客户端。这些客户端主要由自己执行大部分处理。这些客户端处理大量数据,并且具有高效的处理器。它们不依赖服务器来处理提供给它们的信息。胖客户端的最常见示例是个人计算机。个人计算机为用户提供了众多功能,而不太依赖服务器提供这些服务。
例如,电脑上使用能够直接共享结果到网络的美术软件,或者用于玩多人在线游戏的设备都属于厚客户端。类似独立运行的台式机通过连接的网络发送或接收文件的工作站也属于厚客户端。
薄客户端
薄客户端也被称为最小客户端。它利用主机计算机的资源。大多数薄客户端设备仅代表应用服务器处理的数据。服务器端负责对数据进行任何处理。
例如,使用Google Docs或MS Office Web应用的设备就是薄客户端。
无盘节点
无盘节点是薄客户端和厚客户端的混合体。它具有上述两种模型的特点。与厚客户端一样,批量数据由客户端处理,但它依赖服务器来存储持久数据。这种方法非常有用,因为它提供了上述模型的特点。它提供了多媒体支持和与胖客户端类似的高性能,同时也具有薄客户端的高度灵活性和易管理性。
例如,像《侠盗猎车手》这样玩在线游戏的设备就是无盘节点。
零节点
这些客户端类似于薄客户端,但更加轻巧,而且成本比薄客户端更低。它们的能耗更低,因为它们所需的资源比胖客户端或薄客户端要少。它们不需要被配置。零客户端系统中没有存储器来存储数据。
客户端与服务器之间的交互
- 在客户端-服务器架构中,双方都在促进通信方面起着至关重要的作用。客户端通过向服务器发送请求来启动通信。请求可以是用于检索客户端系统中不可用的数据或资源。
- 客户端和服务器可以位于同一区域,也可能不在同一区域。促进客户端和服务器之间通信的要求是两个设备都应通过网络连接。当服务器和客户端都位于同一台机器上时,通信是通过进程间通信完成的。
- 客户端和服务器执行不同的任务。分布式应用框架确定了客户端和服务器任务的区别。客户端系统执行的任务称为客户端任务,服务器执行的任务称为服务器任务。
- 服务器的功能包括响应客户端的请求,并向客户端提供所请求的资源,如文件、数据和网络访问。它们也用于存储或处理大量数据。
- 在服务器端,服务器使用多个程序来共享资源并为客户端提供所请求的服务。客户端和服务器之间的通信遵循请求和响应的模式。客户端通过发送请求开始通信,服务器响应请求。通信遵循一组称为通信协议的规则。
- 为了促进通过互联网连接的客户端和服务器之间的通信,定义了诸如传输控制协议/互联网协议等协议。网络上的每个设备都需要遵循这些协议才能使用互联网。
- TCP协议负责在客户端和服务器之间保持通信。它确保消息交换结束时连接不会中断。它还定义了数据如何在设备之间传输。它发送和接收数据包,并在传输过程中对丢失的数据包进行管理。
- 可能会有多个请求同时发送到服务器,这些请求可以来自不同的客户端或同一客户端。在这种情况下,服务器根据请求的优先级将请求排成一个调度。
- 客户端可以使用访问控制工具来管理对服务器的访问。这允许客户端连接或断开与服务器的连接。
客户端和服务器端
客户端指的是在用户端执行的功能,而服务器端用于指代服务器执行的任务。例如,JavaScript在客户端执行。该脚本在用户的浏览器上运行,因此被视为客户端脚本。相反,CGI(公共网关接口)在服务器端执行,因此被称为服务器端。
与客户端一样,服务器也可以是各种类型。服务器可以是应用服务器、不同的系统、数据库或Web应用程序服务器。当桌面计算机无法独立执行某个功能时,可能需要服务器。系统会从其他系统请求缺失的资源。因此,当系统请求服务时,它被称为客户端,提供服务的系统被称为服务器。
客户端和服务器架构示例
通过网络连接并通过网络共享资源的设备在该网络中可以充当客户端或服务器。可能存在多个客户端-服务器关系,例如Web、文件或资源共享或邮件服务。
当用户使用Web浏览器从互联网上获取信息时,Web浏览器在互联网上充当客户端,向服务器发送对Web页面的请求。服务器通过提供或拒绝用户访问Web页面来响应客户端的请求。服务器向浏览器返回一个HTML(超文本标记语言)文件。
系统管理请求,并接受或拒绝计算机的请求。如果被接受,它会将请求的HTML文件发送到服务器。它负责执行存储大量数据和管理数据文件等任务。它允许用户在虚拟网络上共享大量数据,而无需实际共享文件。一些常见的文件服务器的例子包括连接到网络的存储设备或用于托管在互联网上共享的文件的计算机。
文件传输协议是一种协议,它使用户能够使用TCP/IP连接共享文件的系统之间进行文件共享。它依赖于控制对话的命令通道和负责共享文件的数据通道。