BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Heroku上でPlay!の公開ベータがリリース

Heroku上でPlay!の公開ベータがリリース

原文(投稿日:2011/08/30)へのリンク

Herokuは、Java webフレームワーク であるPlay!を公開ベータとしてリリースした、と昨日アナウンスした 。Play!は、web開発に「クリーンルーム」アプローチを取り、様々な自ら課した制約にとらわれないようにすることを決めた。制約の中には、以下のものがある。

サーブレットコンテナとの互換性、JSPのサポート、標準のJava webアプリケーション レイアウトとの互換性、意味のないJavaやOO原理への準拠

そのような訳で、Play!は Ruby on Railsの「ビルドとデプロイ」モデルに従い、これまでの「パッケージと分配」モデルには従わない。

決まり文句のクラスやXML設定は不要である。フレームワークは、パッケージング方法に新鮮なアプローチを取っており、意味があるなら静的なコードを使う。例えば、コントローラのエントリポイントは、ステートレスで、オブジェクト指向ではなくHTTP指向なので、それらは、静的なメソッドとして実装されている。

先週リリースされたばかりの" Heroku for Java" のように、Play!はコンテナ無しのPaaSモデルをベースにしている。Play!アプリケーションは、ローカルに走ることができ、またシームレスに運用にデプロイできる。このために、デプロイのワークフローが単純になり、そして環境の差に起因するあらゆる問題がなくなる。

アーキテクチャの観点から言えば、Play!は Netty を使っている。これは、非ブロッキングのI/Oプロトコルライブラリで JBossチーム によって開発された。これは、継続ベースのプログラミングモデルを使って、リクエストの非同期処理をサポートしている。Play!はまた、share-nothing モデルを実装している。これによってステートフルなセッションは不可能なので、ノードを追加するだけで、容易に水平方向にアプリケーションをスケールアウトできる。

言語戦略の観点から、Herokuは、以下のように 説明している

Javaは、複数言語が混じり合うプラットフォームの道における一里塚で、将来はもっと言語が増えます。将来の言語パックは、古いもの(Javaのように)から最新のもの( Clojure や Node.js)、公平に中間的もの(Rubyのように)まで広範囲に及ぶでしょう。我々はできるだけ包含することを望んでいます。言語の選択は開発者次第です。

WebアプリケーションもJavaの世界もクラウド アプリケーションプラットフォームによって、 破壊的な革新 を迎える時期に来ているのではないか?とHerokuは考えている。あなたの見解はどうですか?

この記事に星をつける

おすすめ度
スタイル

BT