上周Heroku开始支持Java程序设计,具体的请参见我的上一篇博文《Heroku 上的 Java 程序设计》,本周Heroku开始支持Play框架,本文就带领大家熟悉一下基于play框架的程序开发流程。
Play是什么
Play是 一个Java Web框架 。针对Web开发,Play采用了“净室”方法,不会强加约束,例如:
兼容Servlet容器、支持JSP、兼容标准Java Web App布局、顺应Java和OO原则。
Play遵循Ruby on Rails的“Built-and-Deploy”模型,而不是更传统的“Package-and-Distribute”模型。
不需要公式化的类或XML配置文件。框架采用了全新的打包惯例,在适当的地方使用了静态代码。举例来说,控制器入口点是无状态的,它面向HTTP而非面向对象,因此可以用静态方法来实现。
Play基于无容器的PaaS模型。Play应用可以运行于本地,也可以无缝地部署到生产环境。这样一来就可以简化部署工作流,消除由环境差异导致的问题。
从架构角度来看,Play使用了Netty,这是一个由JBoss团队构建的非阻塞I/O协议库,它使用基于Continuation的编程模型,可以支持请求的异步处理。Play还实现了Share-Nothing模型,可以很方便地通过添加节点对应于程序进行水平扩展,有状态会话是无法做到这点的。
怎样使用Play
- 安装 heroku 客户端开发环境,参见 Linux, Mac, Windows.
- 安装 git 客户端软件和配置 ssh key,参见 Mac,Windows 和 Linux
- 安装 Play! version 1.2.3
- 登录 Heroku :
heroku auth:login
- 创建一个 Play! app:
play new play_hello_carey cd play_hello_carey
- 本地运行 app :
play run --%production
- 建立 git repo:
git init git add app conf lib public test git commit -m init
- 在 Heroku 上建立一个新的 app :
heroku create -s cedar
- 上传 play_hello_carey app 到 Heroku:
git push heroku master
- 运行 app,浏览器中访问app网址 :
heroku open
通过这个流程,相信大家可以知道怎样在Heroku上面部署安装基于Play框架的Java程序了。