三层架构:
3 层架构,中间服务器处理客户端请求,与下级服务器协调客户端请求的执行。它添加了中间件(中间轮胎),为一个 DBMS 的客户端提供了一种从另一个 DBMS 访问数据的方法。
通常,使用两层客户端服务器模型来访问来自一个 DBMS 服务器的数据,这是一个集中式系统。另一种分布方式是将几个等效的数据库存储在不同的地方,称为分布式数据库系统(DDS)。
例如,不同的客户列表可以存储在由具有许多分支机构的组织组织的多个状态中的每个分支机构。这些表是分布式但相互连接的,因此 DBMS 能够随时随地查找任何客户的信息。
从上图(a)可以看出,client为first-Tier,server(cpu)为application server tier或middle-Tier或second-Tier,数据库为Third-Tier或数据库服务器Tier。
三层架构基本上是三层——
- 第一层(客户层)
- 第二层(应用服务器层/中间层)
- 第三层(数据库服务器层)
三层架构的优点:
- 关键的三层优势是提高了可扩展性,因为应用服务器可以部署在多台机器上。此外,数据库不会与每个客户端建立更长的连接——它只需要来自较少数量的应用程序服务器的连接。
- 它提高了数据完整性。在这里,所有更新的信息都经过第二层。第二层可以确保只允许更新数据库中的重要信息,并消除不可靠的客户端应用程序破坏信息的风险。
- 由于客户端无法直接访问数据库,因此提高了安全性;客户端获取未经授权的数据更加困难。业务逻辑更安全,因为它存储在安全的中央服务器上。
- 将核心业务从数据库服务器中分离出来,负载均衡就容易多了。
- 高性能、轻量级、持久化的对象。
- 更好地重复使用。
- 可扩展性:每个项目都可以水平扩展。
- 性能:由于表示层可以缓存请求,网络利用率最小化,负载降低。
- 易于维护和修改。
- 提高数据完整性。
- 提高安全性
- 客户很“瘦”。这就是使用较便宜的硬件背后的原因。
- 变更管理执行起来更容易、更快捷,因为程序逻辑/业务逻辑是在中央服务器上实现的。
- 添加的模块化使得修改或替换一层更容易,而不会影响另一层。
三层架构的缺点:
- 它比 2 层客户端-服务器计算模型更复杂,因为与 2 层应用程序相比,构建 3 层应用程序更加困难。交流点加倍。
- 客户端不维护持久的数据库连接。
- 可能需要单独的代理服务器。
- 如果使用单独的代理服务器,网络流量将会增加。
- 包含业务逻辑功能的应用程序服务器和包含数据库的数据库服务器的物理分离可能会影响性能。
- 提高复杂性或努力。