2009 11 13 07:34 PM 2759 次查看
分类:Python 标签:Python
由于很多Python的web框架在Google App Engine上的性能都不太好,因此想自己去做个框架,便研究了一下WSGI协议。
这个协议实际上很简单,就是建立一个服务器,这个服务器接收一个callable的对象application。
每当有访问,服务器就将环境变量environ和输出header所用的start_response函数传给application。
而application需要从environ里找出访问参数,用start_response输出header,并返回一个iterable的对象。
服务器接收到这个对象后,就会将它输出给访问者。
2009 11 10 09:39 PM 1457 次查看
分类:Google App Engine 标签:Google App Engine, Python
实际上Google App Engine文章中早就有一篇《在 Google App Engine 中使用 hook》来介绍hook技术了,只是当时对我没用,加上写得很难懂,所以没去细读。
而最近在考虑做blog,想像Discuz!一样做个性能评估,将页面生成时间、数据库访问次数等输出出来。
要实现这个功能的话,一般是需要自己封装一下数据库调用函数,在每次调用时记录下时间和增加调用次数,不过这样改动太大,所以就想到了hook,于是再次读了一遍。
2009 11 9 03:47 PM 1881 次查看
分类:Google App Engine 标签:Google App Engine, Python
考虑一个聊天室的消息模型,一般会有如下属性
class Message(db.Model):
author = db.UserProperty(auto_current_user_add=True)
content = db.StringProperty(multiline=True)
time = db.DateTimeProperty(auto_now_add=True)
为了省事,我不想去维护一个ID字段,只想对time字段排序,并查询出比最近一次查询结果的时间更晚的消息。
2009 11 8 11:54 PM 2199 次查看
分类:Python 标签:Python, 性能
详细的测试我就不列出了,这2种方法的性能与是否为内置类型有关。
2009 11 7 03:56 PM 7157 次查看
分类:网站建设 标签:PHP, Python
今天刚发现freehostia支持Python,所以就推荐下。
当然,PHP和Perl也是支持的,不过只有一个10MB的MySQL数据库,空间为250MB,月流量6GB,单个文件512KB,最多5万个文件,CPU 1.3%。
如果这些限制对你来说不算什么的话,那就往下看吧。
2009 11 3 11:59 AM 6118 次查看
分类:编程 标签:JavaScript, Python
昨天搜狗推出了云输入法,不过没去研究,今天闲得蛋疼,就又来玩了。
2009 11 1 02:33 AM 2856 次查看
分类:Python 标签:Python
前几天试用pyTenjin时遇到个奇怪的问题,if、for这种需要缩进的语句经常会出现这种错误:IndentationError: unexpected indent
而且恼火的是,在一个页面这样写没问题,另一个页面用同样的结构就会出错,甚至只是多了个空行也会报错。
我翻遍了pyTenjin所有的文档,在Google上搜索了半天,仍没找到解决办法。
2009 10 22 04:49 PM 2236 次查看
分类:Google App Engine 标签:Google App Engine, Python
PHP里有几种不同级别的超全局变量,例如$GLOBALS、$_SERVER和$_ENV等,而GAE却不那么全面,用起来稍微有点别扭。
2009 10 16 10:19 PM 1013 次查看
分类:Python 标签:Python
在Python 2.6.3发布后5天,Python 2.6.4rc1也发布了。
这次仍未引入任何新特性,只是修正了至2.6.2以来的近100个bug。
2009 10 15 09:08 PM 1592 次查看
分类:Google App Engine 标签:Google App Engine, Python
随着任务队列API的开放,remote_api这个隐藏的较为低效的模块逐渐可以放弃了。
然而Google实际上还隐藏了一个deferred库,可以更方便地生成后台任务,详情可看《Background work with the deferred library》。
« 看看还有什么好玩意