
Webアプリケーション開発に新しいパラダイムをもたらす「Meteor」
話題沸騰の「Meteor」とは
4月に公開された新しいWebアプリケーションプラットフォーム「Meteor」が話題だ。
MeteorはJavaScript/HTML/CSSによるWebアプリケーションを開発するためのフレームワークとパッケージマネージャー、実行環境などがセットになったプラットフォームである。Node.jsが基盤として採用されているため、サーバ/クライアントともにJavaScriptで記述することが可能で、データベースシステムとしてはMongoDBを備えている。
Meteorの最大の特徴は、開発のリアルタイム性を極めて高いレベルで実現している点だ。クライアント側でコードに変更を加えたら、即座にそれがクラウド上に展開されたアプリケーションに反映される。そして書き換えられたページは即座にWebブラウザにPush配信されるため、ページを更新するためにリロードボタンを押す必要すらない。データベース上のデータについても同様で、変更が加えられたら即座にそれがページに反映される。複数クライアント間でのデータの同期などにも対応している。
Meteor自身はクライアントPC上で動作する開発ツールだが、クラウド上のPaaSもMeteorの一部として統合されており、作成したアプリケーションはコマンドひとつでPaaSにデプロイして公開することができるようになっている。プロジェクトの作成や実行、デプロイ、データベースへの接続などはすべてコマンド操作で行う。特徴的なのは、クライアントとサーバで同じJavaScriptコードを動作させることができる点で、クライアント/サーバで別のコーディングノウハウを学習する必要がないというメリットが挙げられている。また、テンプレートエンジンを備えているため、HTMLコードもテンプレートによってシンプルに記述することが可能となっている。
もうひとつの強みが、独自のインテリジェントなパッケージ管理システムを備えている点だろう。開発者は、使いたいパッケージをコマンドによって追加するだけで、特別な設定をすることなくプロジェクトにアドオンすることができる。利用可能なパッケージは"meteor list"コマンドで確認できる。本稿執筆時点ではCoffeeScriptやjQuery、LESS、Bootstrap、htmljs、AmplifyJSなどといったパッケージがサポートされている。
Meteorの仕組み
Meteorのインストール方法や基本的な使い方などについては、公式サイトのドキュメントなどを参考にしていただきたい。注意点としては、本稿執筆時点で公開されているのはまだ早期プレビュー版であることや、利用にはcurlコマンドが必要なことなどが挙げられる。
さて、ここでは、Meteorの主要な機能について、その内部の仕組みを簡単に紹介していきたい。
WebSocketの利用
MeteorはWebSocketをフル活用することで、サーバ/クライアント間の高速な双方向通信を実現しているようだ。WebSocketを使えば、クライアント側からだけでなく、サーバ側からも自主的にデータの送信を開始することができる。クロスブラウザ対応やプロキシ経由での通信もサポートされているとのこと。WebSocketの実装としてはSock.jsが採用されている。
リアルタイムなページ更新
- 新着記事
- 特集
- ブログ
- 企画特集
-
連載!プロが語るストレージ戦略
-
モバイルデバイスもターゲットに!
-
内部不正や不注意をどう防ぐ?
-
保育業界のDX(前編)
-
IDaaSって何?
-
連載!プロが語るストレージ戦略
-
いままさに社会にとっての転換点
-
明日からではもう遅い?!
-
利便性とセキュリティの両立
-
データの散在と非常率運用がネック
-
デジタルを当たり前と言えるか?
-
いまあるデータで身近な業務をDX
-
ゼロトラストに不可欠なID管理
-
いまさら聞けない「PPAP」
-
特集:IT最適化への道
-
ビッグデータ最前線!
-
次の一手はこれだ!
-
保育業界のDX(後編)
-
請求書がきてからでは遅い
-
セキュリティの今を知る
-
さあ、クラウドで解決しよう。
-
企業DXのキモはクラウドにあり
-
話題のセキュリティ事故体験ゲーム
-
連載!プロが語るストレージ戦略
-
講演の見どころを紹介