AppFog介绍:在AppFog上使用bottle和mongodb

AppFog介绍

AppFog是一个基于Cloud Foundry的PaaS平台。最底层是基于AWS, HP OpenStack, MS Azure, RackSpace等流行的IaaS平台,中间层使用Cloud Foundry,最上层是AppFog。

AppFog的口号是”Work on code, not management”,加之2G RAM, 50G流量的无需绑定信用卡的免费配额,任何Plan(包括免费)都支持自定义域名。此外,AppFog宣传使用的都是m2.4xlarge这些的最快的实例,很有诱惑力。

AppFog目前支持:

  • Java, Java Grails, Java Spring Mysql
  • Node, Node Chat, Node Express
  • PHP, PHP Drupal, PHP Wordpress
  • Python, Python Django, Python Flask
  • Ruby on Rails, Ruby Sinatra

由于PaaS平台都没有root权限和ssh,所以想翻的同学不用考虑啦,但做个小的web app还是很靠谱的。目前AppFog的文档还不是很完善,所以我以bottle/mongodb写了一个小demo。

Bottle+MongoDB on AppFog

首先注册一个免费的AppFog账号,无需信用卡,10秒搞定。

接着新建一个app,先选择app,这里选Python。接着选择Infrastructure,我选择的是新加坡结点的AWS。然后需要绑定一个Service,这里选择MongoDB,随便起个名字就好。

下载我分享的Gist,保存到一个文件夹中。

进入该文件夹,安装AppFog的命令行工具,并将代码部署到AppFog上:

    sudo gem install af
    af login
    af update 

最后访问yourapp/test,测试一下,大功告成。

AppFog的价格

具体的价格在这里。跟黑心的Google App Engine相比,价格绝对不算贵,付费模型也没有那么复杂。AppFog的CEO Lucas写了一篇blog,来详细解释为什么使用这种定价模型,如何支撑免费的配额。

部署体验

AppFog的部署挺快的,除了上面提到的python app(我的app比gist中要复杂一些,原来部署在EC2上,为我的App Store产品而设计)需要花一些时间,Wordpress/Drupal的部署都在30秒内完成。另外AppFog的Dashboard做得很不错,我很喜欢他们的UI。

AppFog的劣势

文档真的还很不完善,对新手不太友好。此外,可供选择的部署结点还比较少。另外,不同Plan的跨度比较大,过渡不够平滑。最后就是流量比较贵了,超过50G,0.15$/G。

总的来说,AppFog是个很有希望的PaaS平台,欢迎留言与我讨论使用的经验和心得。

附小广告一则:唱吧iOS团队诚招iOS工程师,推荐成功即奖励6000元现金或iPhone 6一部,详见这篇blog