一个Web API调用其他Web API

时间:2015-06-08 15:26:11

标签: asp.net-web-api

我有3个具有相同功能的Web API服务器。我将添加另一个仅用于Proxy的Web API服务器。因此,来自任何地方和任何设备的所有客户端都将调用Web API代理服务器,代理服务器将随机将客户端请求传输到其他3个Web API服务器。 我这样做是因为:

  • 一分钟内有很多客户端请求,我不能只使用一个Web API服务器。
  • 如果一台服务器已经死亡,客户端仍然可以向其他服务器发送请求。 (我需要至少1个Web服务器响应客户端)

问题是:

  • 实施Web API代理服务器的最佳方法是什么?

  • 有没有更好的方法来处理大量客户端请求?

我需要至少1个Web服务器响应客户端。如果我有3台服务器,其中2台已经死了。

请给我一些可以帮助我的链接或文件。

由于

2 个答案:

答案 0 :(得分:1)

听起来你需要一个反向代理。可以将Apache HTTP Server和NGINX配置为充当负载平衡的反向代理。

NGINX文档:http://nginx.com/resources/admin-guide/reverse-proxy/

Apache HTTP Server文档:http://httpd.apache.org/docs/2.2/mod/mod_proxy.html

答案 1 :(得分:0)

您所描述的是调用负载平衡和Azure(您的评论中似乎正在使用),它为云服务和网站提供了开箱即用的功能。您应该在同一个云服务下创建任意数量的实例,并在云服务端点下打开一个特定端口(将进行负载平衡)。