2012年3月29日

Cloud Foundry 支持的 Java EE 開發框架整理

CloudFoundry.com
Cloud Foundry 是開放源碼的 PaaS 雲端解決方案,只要註冊帳號、不必等到死就能上雲端。

雖然 CloudFoundry 的 VCAP/VMC 主要是 Ruby 開發,但是因為 VMWare 併購 SpringSource,而 Spring 又是 Java EE 當前最盛行的  Framework,所以在 Cloud Foundry 上佈署 Java 開發的 Web App,算是相當不錯的選擇。

Spring(Java)
http://start.cloudfoundry.com/frameworks/java/spring/spring.html

支援 Spring 是一定要的,但個人認為用 Spring 開發 Java Web App 還是太過麻煩,例如要自己搞定 Spring MVC、Hibernate、SiteMesh...等 stack。

Lift(Scala)
http://blog.cloudfoundry.com/post/6109591023/cloud-foundry-now-supporting-scala

Scala 是 JVM Scripting Language,也是 Cloud Foundry 預設支援的語言之一,它讓 Java 程式設計師可以不必再忍受老舊語言的諸多缺陷,使用更現代的程式語言特色及風格;而 Lift 是以 Scala 建構的 Web Framework,兼具開發敏捷、安全性、易擴展與高性能。


Play(Scala/Java)
http://www.playframework.org/modules/cloudfoundry

Play! Framework 是同時支援 Scala 及傳統 Java 語言的開發框架,相容舊的 Java 語法也使轉換的門檻降低;透過 Modules 可以輕鬆將 Play 的 Web App 發佈到 Cloud Foundry,因此這是個相當不錯的選擇。

Grails(Groovy)
http://start.cloudfoundry.com/frameworks/java/spring/grails.html

Grails 是 SpringSource 的 Web Framework,因為採用了比 Java 更容易撰寫的 Groovy,並整合 Spring MVC、Hibernate、SiteMesh... 等優秀的開發框架,因此在國外是個相當受 Java 世界歡迎的框架。

在安裝 Cloud Foundry Plugin(Grails 的擴充套件)之後,就可以輕鬆將 Web App 直接發佈到 Cloud Foundry,這也是相當簡便的一種方式。

由於 GORM(Grails 的 ORM、Model )是採用 Hibernate 作為底層,對 MongoDB 或 MySQL 等雲端 PaaS 常見的資料庫選項,都有內建(由 Hibernate 原生提供支援)或 Grails Plugins 可供安裝,對應用程式佈署及遷移需求通常都能找到合適的方案。

即使讀者還沒打算使用 Cloud Foundry 或 PaaS,也可以考慮早一點認識這些現代(Modern)的 Java EE 開發框架,雖然 Servlet、JSP、JSTL、EL... 是 Java EE 入門必要的基礎,但這些早期制定的技術規格,早已跟不上時代進步的潮流,如果想開發 Modern Web Application,那先選個  Modern Web Framework 也是必然的前提。而 Cloud Foundry 很快就支援這些 Framework,也代表著這些 Framework 有一定的成熟度、組態(套件相依管理)維護容易、可擴展性(Scalable)高、... 是相當值得參考的選項。

沒有留言:

張貼留言

lyhcode by lyhcode
歡迎轉載,請務必註明出處!