Client/Server DBMS 中的技术是什么?
What is Client/Server Technology in DBMS?
我真的很想知道什么是 Client/Server 在 DBMS、硬件、软件和架构方面。
Client/Server 技术和文件处理系统有什么区别。
Client/Server 系统的硬件组件
它主要有3种类型的客户端,网络和数据库服务器
客户端可能是个人电脑、笔记本电脑、手机、平板电脑。
网络是布线、通信线路、NIC、集线器、路由器、LAN、WAN。
服务器是一台具有足够处理速度、内部 RAM、磁盘存储等的计算机
Client/Server 系统的软件组件
它有 2 种类型的客户端和数据库服务器,应用软件是 运行 在客户端,它使用存储在服务器上的数据通过 Sql 通过数据访问查询 API 就像 JDBC 和 ADO.net.
Client/Server 系统的架构组件
它主要使用 2 种类型的应用服务器和 Web 服务器,业务组件存储在应用程序中 Server.Web 服务器用于存储 Web 应用程序和 Web 服务。
客户端和服务器是两个独立的实体 -- 硬件 and/or 软件。客户提出问题;服务器坐在那里等待问题并提供答案。
"separate entities"是为了强调它们在逻辑上是分开的,即使您可以将它们放在同一硬件上。
在数据库中,客户说"SELECT ...";服务器说 "here's the result set for that query"。或者它可能会说 "there are no database rows satisfying that query"。或者客户说 "Please INSERT ...";服务器说 "OK, that's done"。请注意,在后一个示例中,"result" 更像是一个 "acknowledgement".
数据库客户端可以但不一定与数据库服务器位于单独的物理计算机上。
术语 "client" 和 "server" 对应于两个(或更多)软件组件(如家庭关系中的父子)的通信中的角色。
通常,具有数据和操作该数据的逻辑的软件组件称为服务器,因为它服务于数据和 activity。连接到该服务器并与其通信并且不具有所有数据和逻辑的软件组件称为客户端,它通常是非常被动的。服务器和客户端不受硬件限制:您可以在工作机器上安装 HTTP 服务器以及浏览器(HTTP 客户端)。在现实生活中,您也将关注点分离应用于硬件:您拥有大数据存储和高响应硬件,您专用于服务器软件组件和许多具有客户端软件组件的小型工作机器连接到服务器。
这个概念可以应用于大多数软件系统,如数据库(服务器保存数据,客户端知道如何请求数据)、文档(HTTP 服务器拥有文档、管理它们甚至可以包含逻辑组件,例如 PHP 脚本或应用程序,通常浏览器作为客户端)。服务器和客户端不是对立的。拥有一个应用程序服务器,如 SAP 系统,该服务器通常也是其他服务的客户端。应用程序逻辑通常与数据库分离,因此应用程序作为应用程序客户端的服务器,是(或具有)数据库的客户端。
由于client/server视图是软件通信的层级划分,所以你也可以拥有等权的组件。一些分布式架构具有平等的组件,彼此通信,具有相同的能力和逻辑,并最终拥有全部或部分数据。
在软件的客户端-服务器分离中,两个组件可以位于同一硬件上,但它们也可以通过网络进行通信并位于不同的硬件上。通常服务器有勤劳的部分,所以你可以有很多轻量级的客户端,它们只发送当前需要的数据和逻辑的请求。
但这并不是必须的。当一台计算机连接到另一台计算机并从中复制所有逻辑(程序)和数据时,成为另一台服务器,在复制所有这些信息的过程中,获取机器是客户端,而提供机器是服务器。
我不确定 "file handling systems" 是什么意思。文件处理系统通常是一个软件组件,可以为您提供来自文件系统的数据。通常这是一个本地问题,文件系统在一个硬件上的硬盘上运行。但也有分布式存储,如 NAS(网络区域存储),您还可以通过网络连接客户端和服务器组件。
综上所述,client/server架构的优点是:
- 关注点分离(这允许专业化)
- 服务器和客户端的独立可扩展性
- 一起工作的逻辑/数据的集中(遵循关注点分离)这使得在服务器上维护逻辑变得更加容易(假设您必须更新所有浏览器才能在您的应用程序中进行更改)
我真的很想知道什么是 Client/Server 在 DBMS、硬件、软件和架构方面。
Client/Server 技术和文件处理系统有什么区别。
Client/Server 系统的硬件组件
它主要有3种类型的客户端,网络和数据库服务器
客户端可能是个人电脑、笔记本电脑、手机、平板电脑。
网络是布线、通信线路、NIC、集线器、路由器、LAN、WAN。
服务器是一台具有足够处理速度、内部 RAM、磁盘存储等的计算机
Client/Server 系统的软件组件
它有 2 种类型的客户端和数据库服务器,应用软件是 运行 在客户端,它使用存储在服务器上的数据通过 Sql 通过数据访问查询 API 就像 JDBC 和 ADO.net.
Client/Server 系统的架构组件
它主要使用 2 种类型的应用服务器和 Web 服务器,业务组件存储在应用程序中 Server.Web 服务器用于存储 Web 应用程序和 Web 服务。
客户端和服务器是两个独立的实体 -- 硬件 and/or 软件。客户提出问题;服务器坐在那里等待问题并提供答案。
"separate entities"是为了强调它们在逻辑上是分开的,即使您可以将它们放在同一硬件上。
在数据库中,客户说"SELECT ...";服务器说 "here's the result set for that query"。或者它可能会说 "there are no database rows satisfying that query"。或者客户说 "Please INSERT ...";服务器说 "OK, that's done"。请注意,在后一个示例中,"result" 更像是一个 "acknowledgement".
数据库客户端可以但不一定与数据库服务器位于单独的物理计算机上。
术语 "client" 和 "server" 对应于两个(或更多)软件组件(如家庭关系中的父子)的通信中的角色。
通常,具有数据和操作该数据的逻辑的软件组件称为服务器,因为它服务于数据和 activity。连接到该服务器并与其通信并且不具有所有数据和逻辑的软件组件称为客户端,它通常是非常被动的。服务器和客户端不受硬件限制:您可以在工作机器上安装 HTTP 服务器以及浏览器(HTTP 客户端)。在现实生活中,您也将关注点分离应用于硬件:您拥有大数据存储和高响应硬件,您专用于服务器软件组件和许多具有客户端软件组件的小型工作机器连接到服务器。
这个概念可以应用于大多数软件系统,如数据库(服务器保存数据,客户端知道如何请求数据)、文档(HTTP 服务器拥有文档、管理它们甚至可以包含逻辑组件,例如 PHP 脚本或应用程序,通常浏览器作为客户端)。服务器和客户端不是对立的。拥有一个应用程序服务器,如 SAP 系统,该服务器通常也是其他服务的客户端。应用程序逻辑通常与数据库分离,因此应用程序作为应用程序客户端的服务器,是(或具有)数据库的客户端。 由于client/server视图是软件通信的层级划分,所以你也可以拥有等权的组件。一些分布式架构具有平等的组件,彼此通信,具有相同的能力和逻辑,并最终拥有全部或部分数据。
在软件的客户端-服务器分离中,两个组件可以位于同一硬件上,但它们也可以通过网络进行通信并位于不同的硬件上。通常服务器有勤劳的部分,所以你可以有很多轻量级的客户端,它们只发送当前需要的数据和逻辑的请求。
但这并不是必须的。当一台计算机连接到另一台计算机并从中复制所有逻辑(程序)和数据时,成为另一台服务器,在复制所有这些信息的过程中,获取机器是客户端,而提供机器是服务器。
我不确定 "file handling systems" 是什么意思。文件处理系统通常是一个软件组件,可以为您提供来自文件系统的数据。通常这是一个本地问题,文件系统在一个硬件上的硬盘上运行。但也有分布式存储,如 NAS(网络区域存储),您还可以通过网络连接客户端和服务器组件。
综上所述,client/server架构的优点是:
- 关注点分离(这允许专业化)
- 服务器和客户端的独立可扩展性
- 一起工作的逻辑/数据的集中(遵循关注点分离)这使得在服务器上维护逻辑变得更加容易(假设您必须更新所有浏览器才能在您的应用程序中进行更改)