如何构建一个面向 Web 的高带宽服务器?

如何构建一个面向 Web 的高带宽服务器?

我正在为基于 Web 的科学计算平台设计一项服务,该服务涉及上传大型数据文件(数 GB)。每个文件的标头中还包含 Cookie,允许我的服务器对用户进行身份验证。多个用户可能会同时上传这些文件。

这些文件必须使用 SSL 加密,最好(但不是绝对必要)将所有请求发送到我们的主要面向 Web 的域名,该域名有一个 Apache 服务器处理所有请求。我们的服务器托管在 Google Compute 引擎上。我有多个后端服务器用于实际处理数据文件,目前数据请求正在使用mod_proxy后端服务器进行代理。

但是,即使使用代理,所有数据在发送到后端服务器之前仍会流经面向 Web 的服务器。这很容易使面向 Web 的服务器和我的网站陷入瘫痪。

我的问题是:这种情况通常是如何处理的?(抱歉,我不是 IT 人员,但必须自己实现)

在这些情况下是否使用重定向而不是代理?我尝试过重定向,但原始标头信息丢失,后端服务器无法检索身份验证 cookie。

答案1

我认为您需要的是负载平衡器。有一些重量级软件可以做到这一点,但您可以使用 mod_proxy_balancer 使用 Apache 创建一个简单的负载平衡器。它可以跟踪会话,因此标头信息不会丢失。

相关内容