2011 10 12 04:11 AM 2109 次查看
分类:Google App Engine 标签:Google App Engine
本想睡觉了,突然看到GAE SDK 1.5.5版发布了,于是就再坚持一下,写完本文吧。
2011 10 7 02:35 PM 4167 次查看
分类:Google Cloud SQL 标签:Google Cloud SQL, Google App Engine
今天一觉起来,发现Google Cloud SQL发布了。
这一产品对Google App Engine来说意义重大,因为终于可以使用关系型数据库了,可以join了,可以无限制地使用事务了,对索引和字段有更多的控制了,可以运用自己早已掌握的关系数据库理论知识和经验了。
而和Datastore一样,Google Cloud SQL也无需开发者维护。
同时,它还是个web服务。尽管目前还只能通过Google App Engine和一些工具来访问,但未来可能对外提供REST接口。
值得一提的是,目前它还处于Limited Preview阶段,在2011年是完全免费的,并且在收费前会提前30天通知。
2011 9 29 12:29 PM 1736 次查看
分类:Google App Engine 标签:Python, Google App Engine
今天在GAE论坛看到一个使用反向游标来分页的方法,觉得很有用,就在此分享了。
2011 9 13 10:57 AM 1716 次查看
分类:Google App Engine 标签:Google App Engine
今天一早就发现GAE SDK更新到1.5.4版了,和几天前发布的prerelease版差不多,没什么大的改动。
2011 9 10 11:48 AM 3785 次查看
分类:Google App Engine 标签:Google App Engine
2011 9 2 05:28 PM 1420 次查看
分类:Google App Engine 标签:Google App Engine
GAE的datastore有个很严重的限制:一个事务只能处理一个实体组。原因就是实体组被当成单个实体来处理,它会有个版本号,在提交事务时通过检查版本号来确定事务是否成功。
这简化了分布式数据库的事务处理难度,却给开发者留下了一个2难的问题:想要使用事务,实体之间就需要紧密地关联起来;而关联的实体太多,又很容易引起事务冲突,导致提交失败。
之前我也说过用分布式事务来解决这个限制的办法,不过毕竟不太方便。而如今它终于要被解决了:GAE团队的proppy发了一个《Google App Engine multi-entity-group transactions testing》表单,使用HR数据库的可以去申请测试资格了。
不得不说,Google的员工还是很对GAE很有信心的…
2011 9 1 01:52 PM 2723 次查看
分类:Google App Engine 标签:Google App Engine
今天收到一封Google App Engine发来的信,标题为《Google App Engine Leaving Preview》。发布3年后,Google App Engine也即将于九月的下半月进入正式版了,比起那个beta了5年的Gmail,或许算是快的了。
2011 8 18 08:59 AM 1540 次查看
分类:Google App Engine 标签:Google App Engine
估计是昨晚睡得太早,今天7点不到就醒来了,听了一个小时鬼故事后睡意全无,于是就打开电脑了,赫然发现GAE SDK 1.5.3版已经发布了。
2011 7 22 11:36 AM 1819 次查看
分类:Google App Engine 标签:Google App Engine
今早起来发现GAE SDK 1.5.2版发布了,不过工作太忙就无暇顾及了,于是现在补上更新列表:
- 可以在管理员控制台的Application Settings页面里设置最大空闲实例数和最小等待时间。
- 索引中有重复字段的不会再报索引爆炸的警告。
- SDK支持并行的数据库事务。
- Datastore的stats API支持按namespace查询。
- 管理员控制台的Task Queues页面可以显示请求头、过去的运行信息和任务的payload。
- Pull queue可以用modify_task_lease()来修改lease(租期和任务数)。
- Pull Task的最大尺寸增加到1MB。
- 可用appcfg.py的"backend configure"指令来修改backend instances数目,而无需先停止instances。
- Mail API可设置References和In-Reply-To头。
- SDK的APPLICATION_ID环境变量将含dev~前缀。获取app id的推荐方式是用appidentity.get_application_id()。可以使用--default_partition参数来修改这个前缀(后面会附加一个“~”符号)。
- Deferred API的defer()可接收_target参数,用于指定应用的version或backend。
- db.Model增加to_dict()实例方法。
- Images API增加get_original_metadata()方法来获取图像的EXIF信息。
- db.py增加@transactional装饰器,用于标注一个函数用于执行事务。
此外,Go SDK的进展很慢,看上去还是个玩具…
2011 7 11 05:22 PM 8562 次查看
分类:Google Reader 标签:Python, RSS, Google Reader
Google Reader是我最喜欢的web服务,可惜在iPhone上没有一个我理想中的客户端,所以只好自己动手丰衣足食了。
而开发的第一步自然就是搞定Google Reader API,可惜Google一直没有放出官方文档。所幸的是前人已经通过反向工程探寻出了相关信息(GoogleReaderAPI、Unofficial Google Reader API、google reader api 介绍、Using the Google Reader API和GReader-Cocoa等),所以不用自己去一一摸索了。
不过文档有点老了,这期间Google也稍微改了一些东西,所以还需要稍作修正。
« 看看还有什么好玩意