模板化+脚本反向代理?
我在思考一个想法,想听听大家的反馈和建议:
我之前在使用网址重写和nginx方面取得了很好的成功,现在我在考虑一个更强大的反向代理/路由器,它可以做到以下几点:
- 根据正则表达式匹配请求并将其映射到处理程序(就像Django那样)
- 某些请求会直接转发到后端服务器,比如静态媒体、memcached等
- 其他请求会渲染模板,从多个后端服务器获取数据
举个例子,一个模板可能包含:
<body>
<div>{% remote http://someserver/somepage %}</div>
<div>{% remote http://otherserver/otherpage %}</div>
</body>
这个反向代理会向someserver/somepage和otherserver/otherpage发起http请求,并将结果拉取到模板中。
我有一些问题:
- 这个想法合理吗,还是说这是个坏主意?
- 有没有现成的工具可以实现类似的功能?
- 有没有现成的服务器加脚本可以用来实现这个,比如lighttpd+lua,nginx+??
- nginx+SSI怎么样?看起来很强大,如果你有经验或推荐,请评论。
- 像脚本语言+eventlet这样的组合怎么样?
- Twisted呢?
我比较喜欢用python来写脚本,模板用jinja或django风格,但我也愿意尝试其他的选择。
2 个回答
0
所以,和在一个iframe里做AJAX请求不同,这里是直接在服务器上处理。
我觉得只有在外部网站完全由我控制的情况下,我才会这样做,因为这涉及到安全问题。而且这样做会影响到你的响应速度。
我是不是完全理解错了,还是说用一些函数和urllib来实现这个其实很简单呢?
1
这个东西已经存在了,叫做Deliverance:http://deliverance.openplans.org/