0

我在具有业务逻辑(客户端)的应用程序中使用 JDBC。此 JDBC 连接到另一台机器(服务器)中的数据库。在这种情况下,我的 JDBC 直接与数据库连接并存储和检索数据。这是两层架构吧?

在另一个应用程序中,例如 servlet 编程,我只是在我的客户端机器上有浏览器,它是表示层(客户端层)。让我将我的业务逻辑视为应用程序层(第二层)和数据库作为数据层(第三层)。我仍然使用 JDBC 将我的应用程序(业务逻辑)与数据库连接起来。第二层和第三层现在驻留在服务器上。

通过上面的例子,在三层架构中,浏览器只是额外添加了一个浏览器,并将我的业务逻辑保留在服务器上。除了这些,我没有感觉到任何性能差异。如果我错了,请纠正我并通过其他示例向我解释 2 层和 3 层的确切架构。提前谢谢亲爱的朋友们。

4

1 回答 1

0

你说的是对的。

  1. 你的第一个例子是两层的。
  2. 第二个例子是三层。

如果浏览器和服务器之间的链接比服务器和 DBMS 之间的链接慢,那么三层架构可以代表重要的性能增益。这是因为通常业务逻辑需要多次调用 DBMS 和/或只向用户呈现 DBMS 返回的一小部分信息。在客户端拥有业务逻辑而与 DBMS 的连接速度较慢将代表重要的性能损失。

在典型的 Web 场景中,客户端和服务器之间的连接通常比服务器和 DBMS 之间的连接慢几倍,并且有你的性能增益。

于 2012-10-11T01:41:50.550 回答