0

在部署 Web 应用程序时,一种常见的做法是将实际的应用程序逻辑实现为一系列服务,并通过 HTTP 公开它们,然后在服务和用户之间放置一些前端。通常,这些前端会处理 SSL、会话数据、负载平衡、路由请求、可能的缓存等事情。

AFAIK,这通常意味着每次有新请求进入时,都必须向一个或多个后端发出一个或多个新请求:每个请求都有其 TCP 握手、HTTP 开销等。

额外的连接不会增加可测量的延迟和/或性能损失吗?如果是这样,从这些部署中获得最佳性能的常用技术是什么?

4

1 回答 1

0

本地连接的延迟将是最小的 - 最多可能是个位数毫秒。额外的 HTTP 会话会产生一些占用开销,但随后会分散在不同的应用程序中。

您描述的方法的优点是在不同的应用程序之间分配负载,因此您可以让许多前端位像 SSL 一样进行繁重的工作,并拥有更少的后端应用程序来处理更多的会话。您可以选择和混合您需要的应​​用程序。

一个单一的单体应用程序可能会快一点,直到它耗尽容量,此时你会遇到问题,因为它很难扩展。

于 2012-03-05T21:11:55.820 回答