HttpModule在不同的服务器上提供文件

时间:2013-03-04 21:33:01

标签: iis-7 windows-server-2008

我想创建一个可以为不同服务器上的文件提供服务的HttpModule。

服务器A可公开访问,并接收对file.txt的请求。此文件位于服务器B上,服务器A将其提供给用户。服务器B不公开。

使用HttpModule实现此目标的最高性能方法是什么?

我可以让服务器A从服务器B下载文件并将其传回给用户。这需要服务器A的大量资源才能做到这一点。

另一个选择可能是服务器A将文件直接从打开的文件共享提供给服务器B.这可能需要服务器A上更少的内存,但仍然需要将文件从服务器B流式传输到服务器A. / p>

我希望有一些方法可以将请求重定向到服务器B,然后该文件可以直接从服务器B返回到客户端,这可能由服务器A提供便利。

我不能简单地重定向到服务器B,因为它不能直接供最终用户使用。

1 个答案:

答案 0 :(得分:1)

我可能根本不会投资编写HttpModule,而是会使用ARR(Application Request Routing)模块以高性能的方式为您执行“代理”操作。您也可以使用其缓存功能,如果某些文件“热”,它们可以由“前端”服务器直接下载而无需访问后端服务器。使用它的缓存将是最快的选择,因为它可以非常聪明的缓存它也将是一种无痛的方法。

它经过优化,可以每秒处理数千个请求,并以异步方式执行此操作,使其可以扩展到大量数据。用于许多内容交付网络类型的情况,因此您可以指望它非常快。