※本記事は、Developers Summit 2014が開催された2014年2月時点での情報に基づいて作成されています。最新情報やBluemixの概要については下記をご覧ください。
Bluemix・JazzHub・Orionが自由で迅速な開発環境を実現
ITの迅速性や付加価値がビジネスに大きな意味をもつようになっていることを受け、IBMでは近年、「自由な開発環境」の提供を大きな目標にしているという。万仲氏はこれを「これまで制約の多かった開発環境から逃れ、『適した言語』で『好きなエディター』で『さくっとポータブルなアプリケーション』を開発・実行できる環境」と表現する。
![日本アイ・ビー・エム 万仲龍樹氏](http://cz-cdn.shoeisha.jp/static/images/article/7687/7687_01.jpg)
それを象徴する言葉として、万仲氏は、2011年にジェフリー・ムーア氏が提唱した概念「Systems of Engagement」(以下、SoE)を紹介した。SoEは、様々な人や物をリアルタイムに連携させて、新しい価値を生み出していくシステムとその環境のことを指す。実現には、これまでとは違うシステムの作り方、それを支えるツールや実行環境が必要になると考えられる。IBMはそうした事業に「やる気」を持って、戦略的に取り組んでいくという。開発環境は定番のEclipseで、実行環境はクラウド環境に置かれた「Bluemix」だ。
Bluemixを一言で表すと、Cloud FoundryベースのPaaSである。「クイックなアプリケーション開発と公開」が可能であり、開発言語を自由に選べ、データベースアクセスもサービスという概念で好きなものを選択できる。用途には、Webアプリケーションはもちろん、Mobileのバックエンドサービスも含まれる。現在ベータ版が発表されており、登録すれば無償で試用できるようになっている。使用できる開発言語・フレームワークには、JavaのほかNode.js、Ruby on Railsなどが用意されている。
また、Cloud Foundryの上で稼働するコンポーネントも紹介された。1つ目が、「WebSphere Application Server Liberty Profile」である。この製品は、Java EE 6準拠のアプリケーションサーバー「WebSphere Application Server」(以下、WAS)のアーキテクチャーを大きく変更し、非常に軽量に動作するようにしたもの。バイナリサイズは50~100MBで、起動も5秒と高速。また、基本構成はserver.xmlの1ファイルのみとシンプルになっている。
なお、2013年夏よりWAS Liberty ProfileのBuildpackが公開されており、開発者版と開発環境を無償でダウンロードできるという。EclipseやLiberty Profileを連携させて試してみるとよいだろう。
2つ目に紹介されたコンポーネントは、2013年12月に公開された「IBM SDK for Node.js」である。Node.js(0.10.21)をベースとし、WindowsやMac OS X、Linux for Systems xといったプラットフォームをサポートするほか、Linux on Power Systems(32ビット版)にも対応。こちらもダウンロードが可能だ。
以上は、Bluemixのいわば”表側”にある機能。その”後ろ”に用意されたサービスも非常に充実しているという。BluemixはMongoDBやRedis、MySQL、RabbitMQなど、様々な機能・コンポーネントを提供しているが、中でもJavaで稼働するKey-Value型インメモリーデータストアであるキャッシング機能は、優れたパフォーマンスとスケーラビリティーを誇る機能として、万仲氏がその存在を強くアピールした。
こうしたツール群に加え、IBMでは、クラウドの中でWebを対象にした開発・実行環境を実現するために、「Orion」と「JazzHub」の連携も重視している。JazzHubは開発ツールと、プロジェクトおよびソースコード管理を行うSaaSで、GitHubとの連携が可能。Orionはいわば「Web上で動作するEclipse」で、開発プロジェクトが2011年から進行しており、これがJazzHubの開発ツールとなる。Orionも2013年からベータ版が使用可能になっている。
なお、JazzHubを通じてEclipseからアプリケーションをBluemixへ直接プッシュすることも可能である。たとえばアプリケーションを作成し、JazzHubで[Launch](ローンチ)ボタンを押せば、瞬時にBluemixにプッシュされ、そのUIであるWebツールで確認し、公開することができる。