我如何向我的 Web 服务器发出请求并打开它,也许,对其他主机上的另一个 Web 服务器的多个请求等等,直到一个或多个不同的 Web 服务器获得响应,并将其返回给发起请求的客户端。
1 回答
听起来你要求的是这样的:
[客户端] --> [您的网络服务器] ----> [多个服务器]
- 客户端向您的网络服务器发起请求
- 您的网络服务器向一个或多个远程网络服务器发出请求
- 当至少一个远程网络服务器回复或超时时,您的网络服务器将响应发送回您的客户端。
如果这是您要问的,那么范围太广了。即,您的实现是什么?这真的是一个python问题吗?:)
如果后端的所有大量服务器都相同并且由您控制,那么位于前端的服务器基本上将成为负载平衡器或代理服务器。Ala HA-Proxy、Nginx、Apache、Varnish 等。
如果您正在谈论将您的网站设置为进行部分代理或网络抓取或数据捕获,那么这完全是另一回事。
在任何一种情况下,您的问题/案例都过于模糊,如发布的那样。
编辑:回应评论。
这并不是特别困难。你需要做的是设置一个 python 守护进程,它监听一个 web 端口。根据您希望文件读取行为的工作方式,您可以在启动时读取文件,使其位于内存中,或者您可以承受性能损失并在每次尝试时读取文件。
启动与远程站点的连接是构建和调用适当的 python 库的问题。
创建 python 网络服务器:
http://docs.python.org/2/library/simplehttpserver.html
要启动与远程站点的连接:
使用 Python HTTP 库: http ://docs.python.org/2/library/httplib.html
构建 Python Web 客户端:http: //python.about.com/od/networkingwithpython/ss/beg_web_client_all.htm
Python Web Scraping: 使用 Python 进行 Web 抓取 http://scrapy.org/
您所描述的不是执行任务的理想方式。在这方面,使用 HAproxy/Nginx 会更好。但是,鉴于要求是 python,上述资源链接将为您指明正确的方向。