2010-10-28 149 views
1

我正在设计一个应用程序,要求对我们服务器的所有请求都通过一个“调度程序”类型的服务器进行路由。该服务器将根据请求中发送的API密钥将请求转发到适当的后端服务器,而不是将响应转发回客户端。根据API密钥向其他服务器发送请求

例如,传入的请求可能是http://example.com:6578/<api_key>/create?name=example&date=title

我的第一直觉是使用PHP和Lighttpd的的调度,以及API密钥/服务器映射存储与Membase的。然而,这个路由器最终可能会路由大量的请求,所以性能是关键。

与此同时,Lighty与APC相当快速,并且可以横向扩展。

对于应该用于这样的语言/体系结构的任何建议?

编辑:键值对将从membase或类似的键值存储中获取。因此,对于1234的api_key,membase将返回IP 123.456.789.101。然后,我们会将请求转发至http://123.456.789.101/<client>/create?name=example,并将响应返回给客户端。

回答

0

在我看来,这似乎是你应该用nginx做的事情。 Nginx始终用于转发/代理连接。如果您想要水平缩放,请将一堆nginx框放在负载平衡器后面。

+0

我在#nginx IRC房间里问过,看来只能通过在Lua中编译,然后使用Lua从Memcache中获取值,并抓取远程页面并显示响应。当然,这是个主意。 – BrianV 2010-10-28 14:49:22