Python模版的选择重点

乌龟壳 发布于 2012/01/02 10:24
阅读 2K+
收藏 1

近来研究Python的web框架,发现网上大家有时候会纠结在模版的性能上。

虽然模版第一次加载并渲染时,他们之间的性能确实会有很大差距,但很多模版都可以编译成纯python代码或者其它中间代码的,编译之后的性能差别就不怎么大了,而且这个可以去源代码里面改改模版自带的编译器算法来提升编译后的性能。

所以啊,我从这点感觉到,选择模版系统的关键是模版语法的设计要适合自己的想法。

由于我对模版系统了解得并不多,所以领悟到的可能有偏颇,不知道各位有没有好的想法大家一起讨论下呢?

加载中
1
乌龟壳
乌龟壳

引用来自“Liuxey”的答案

就像红薯说的,web应用,渲染层并非优化重点,重点在数据层

谢谢提醒。我还没接触过大型系统的数据库,所以这方面确实欠考虑了。

不过确实能能够想到,前台的运算是跟HTTP协议一样大部分是无状态的,很容易通过加机器提高处理能力。但后台数据包括session那些是要共享的,相对比较中心一些,较难扩展,所以后台数据处理的性能经常会成为瓶颈。

近来在研究小型工控机下的界面开发,准备用web.py做成网页。直接写http做网站性能是好,不过很难写也很难管理,反正只要把网站搭建起,运行环境要求不高就可以了,没有多少并发的。

所以对模版系统作了下对比,最后还是选择了web.py自带的,很轻,不过即时加载渲染的速度很慢,测试了下每秒才能生成10个页面。后来去源代码里找为什么那么慢,发现了一个编译函数,编译了之后就快了,一万个页面0.9秒就可以全部生成完了。

0
景愿
景愿
就像红薯说的,web应用,渲染层并非优化重点,重点在数据层
0
肖振良
肖振良
一万个页面???IO都跟不上这么多个小文件的读写哈。
乌龟壳
乌龟壳
呵呵,编译后就是纯内存操作了,而且只是在一个循环里面生成,主要是测试下速度而已。
0
Frandy_Cheng
Frandy_Cheng
web.py还行,不过我不喜欢它模板里面的$符号,
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部
返回顶部
顶部