上游选择。
rump的Python项目详细描述
r(outing)ump(i r e)是一个experimenal上游(即服务器)选择器,用于 http请求。它不代理请求,而是与 公开上游选择接口的负载平衡器或反向代理:
- nginxX-Accel-*
- …
开发
$ git clone git@github.com:bninja/rump.git $ cd rump $ mkvirtualenv rump (rump)$ pip install -e .[tests](rump)$ py.test test/ --cov=rump --cov-report term-missing
世界贸易基金会?
通常,您可以将复杂的路由逻辑直接嵌入到负载平衡器或 反向代理(例如nginx lua、varnish vcl等)应该是 99%的时间。
这是一个实验来查看在上游编写基于python的http 选择器将看起来像什么样的灵活性给你。
将其用作program或将其作为lib嵌入代理中。
程序
安装:
使用它:
$ rump list my-router $ rump show -d my-router ... $ rump edit -d my-router $ service rumpd status
库
得到它:
$ pip install rump
使用它:
importrumprouter=rump.Router(name='my-router',...)upstream=router.match_upstream(router.request_type(wsgi_environ))ifupstream:server=upstream()