自从Google App Engine支持Java应用之后,JRuby应用就现身GAE了。不过,还是存在着一些限制,JRuby的Nick Sieger列出了其中的一部分,包括:
\- 没有RMagick/ImageScience/attachment_fu,甚至连ImageVoodoo都没有(没有javax.image的API)。Google有它自己的图片操作API。[..]\
\- 每个应用最多1000个文件。由于这个文件数限制,部署Rails应用的时候我不得不将所有的Rails gem都打成jar包。
Tom Enebo最近在twitter上发布了GAE支持image_voodoo的消息。Nick也释出了在GAE上部署的JRuby应用。
\目前来说,JRuby应用的部署还没有完全自动化,不过很快就会有一些辅助工具可以使用了。其中一个就是reggae,它是用于帮助将Rack应用部署到GAE上的工具。
\最后,虽然JRuby基本上可以在GAE下工作,但是一些常用库就不行了;最典型的就是ActiveRecord,因为Google只提供它自己的DataStore,而DataStore不是关系型的。不过,现在Google的DataStore支持另一个ORM:DataMapper。Genki Takiuch创建了dm-datastore-adapter,这个适配器允许通过DataMapper来使用DataStore。目前来看,DataStore只支持很少的查询选项。
\查看英文原文:JRuby on Google App Engine Roundup: DataMapper Adapter for DataStore, Reggae