这个建筑模式有名称吗?

时间:2009-08-22 16:38:31

标签: performance architecture scalability

假设您有一个由以下网站组成的网站:

  • 为各种用户提供服务的网络服务器
  • 持久性数据库<​​/ li>
  • 一个单独的服务器异步执行后台操作 - 在数据库上准备数据,根据更改更新数据等 - 无论主服务器中发生了什么

您可以轻松地将其转换为另一个世界并讨论线程 - 例如,让一个线程为正在运行的主线程异步准备数据。

这个模式是否有名称,如果它是一个模式?

这种处理数据的方法在性能方面是否有任何优缺点?


我要澄清一下,我要具体询问第二个Web服务器是否正在进行后台处理,而不是整个架构。

3 个答案:

答案 0 :(得分:3)

一切都有模式。如果你已经看过它两次以上,就会有一种模式。

您有三个客户端 - 服务器的例子。

您有浏览器 - Web服务器

您的网络服务器的角色是数据库客户端数据库服务器交谈。

您的网络服务器的角色是应用服务器客户端应用服务器进行通信。

有时人们喜欢称之为 N-Tier ,因为有三层浏览器 - Web服务器 - 数据库服务器,还有一个额外的应用服务器层。

有些人将此扩展为服务总线概念。您的Web服务器使用数据库服务器和应用程序服务器。

Asynchronous Back-End 后端服务器是我听说过的用于描述您的应用服务器架构的名称。

答案 1 :(得分:2)

我没有你的模式名称(不是说没有模式名称),但你在这里有一个优化,以防止你的主线程慢慢响应请求。它不必计算数据,只需要提供它。

这类似于UI编码。您不在UI线程上做任何工作,只需绘制。其他线程应负责确定其他所有内容,因此您的UI具有响应性。

答案 2 :(得分:0)

我不知道它是否是正式的模式名称,但这看起来几乎就像大型机时代的批处理。