两层架构:
两层架构类似于基本的客户端-服务器模型。客户端的应用程序直接与服务器端的数据库进行通信。像 ODBC、JDBC 这样的 API 用于这种交互。服务器端负责提供查询处理和事务管理功能。在客户端,运行用户界面和应用程序。客户端的应用程序与服务器端建立连接,以便与 DBMS 进行通信。
这种类型的一个优点是维护和理解更容易,与现有系统兼容。然而,当有大量用户时,这种模型的性能很差。
三层架构:
在这种类型中,客户端和服务器之间还有另一层。客户端不直接与服务器通信。相反,它与进一步与数据库系统通信的应用服务器交互,然后进行查询处理和事务管理。该中间层充当服务器和客户端之间交换部分处理数据的媒介。这种类型的架构用于大型 Web 应用程序。
好处:
- 由于应用服务器的分布式部署,增强了可扩展性。现在,不需要在客户端和服务器之间建立单独的连接。
- 数据完整性得到维护。由于客户端和服务器之间有一个中间层,可以避免/删除数据损坏。
- 安全性得到改善。这种类型的模型防止客户端与服务器的直接交互,从而减少对未授权数据的访问。
缺点:
实施和沟通的复杂性增加。由于中间层的存在,这种交互很难发生。
三层架构