Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

クラウドアプリケーション開発をJavaScriptだけで!

サーバ側コーディング不要のGoogle App Engine開発ツール「gaedirect」

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2011/09/02 14:00

 PaaS型クラウド「Google App Engine」のデータストアアクセスを、サーバー側のコーディングなしで可能にするツールとして「jsonengine」があります。jsonengineではブラウザクライアントのJavaScriptの記述のみでデータストアアクセスを行うことができ確かに便利ですが、便利な一方で用途によっては使いにくい面もあります。本稿では、同じような利用方法でありながら、もう一つの選択肢としての「gaedirect」というツールを紹介します。

目次
図1-1 gaedirectでクラウドサイト構築
図1-1  gaedirectでクラウドサイト構築

対象ユーザ

 GoogleのPaaS型クラウド「Google App Engine」に興味はあるが経験のない方。JavaScriptやActionScriptによるプログラミング、およびjQueryでの簡単なプログラミング経験のある方。JavaやPythonの開発経験は不要です。

必要な環境

  • コマンドライン動作環境
  • Java SE5またはJava SE 6
  • Eclipse(オプショナルですが強く推奨)

1 クラウド移行の意義

1.1 災害発生時に実証されるクラウドの威力

 5年ほど前から米国で構築され始めたクラウドコンピューティングは、日本でも急速にその価値が認識され存在感を高めつつあります。クラウドは東日本大震災への対応と復興/復旧においても、公共Webサイトの複製を構築したり業務システムを復旧させたりするときに、拡張性・可用性・迅速性などがいかんなく発揮されています。もちろん平時での利用でもクラウドの効果は大きく、コンシューマ系だけでなく、情報系や基幹系システム用の基盤としても使用が増加しています。

1)強力なスケーラビリティ(サーバ能力増強機能)

 非常時などサーバアクセスが急増するような場合でも、クラウド(GAE)の強力なスケーリング機能によってアクセス不能やアクセス遅延の状態を引き起こすことなく、正常な閲覧可能状態を維持できます。

2)高可用性

 PaaS型クラウドは大規模分散システムです。データストアを含めてサーバ機能は、プライマリサーバをレプリケートして分散配置するため、例えば災害発生などによってもサーバダウンに陥る確率は極めて低く、可用性の極めて高いシステムになります。

3)自動レプリケーション

 高可用性を実現する自動レプリケーションは、これも非常事態発生などによっても、データストアに保存されたデータの消滅を防ぎ、永続性(durability)を著しく高めます。クラウドのデータストアにデータを保管することによって、PCやサーバが災害で破損・損傷してしまったような場合でもデータには影響がなく、復旧にかかる時間や経費を大幅に削減できます。

4)電力消費の削減

 データ・センターの電力効率性を測る指標としてPUE(Power Usage Effectiveness)があります。PUEは、データ・センター全体の消費電力をサーバなどのIT機器の消費電力で割った値で、電力損失、冷却、照明等により、余計な電力を消費すると値が大きくなります。

図1-2 PUEの計算
図1-2 PUEの計算

 PUEが1.0であれば、IT機器以外に使用している電力はゼロということを意味しています。

 グリーングリッドのPUE目標値は1.6ですが、国内データ・センターのPUEは下記のようになっています。

図1-3 PUEとデータ・センターの値
図1-3 PUEとデータ・センターの値

 これに対して、Googleのデータ・センターのPUEは1.21で、驚異的な値と言えます。

図1-4 Googleと標準的データ・センターでのPUE
図1-4 Googleと標準的データ・センターでのPUE
5)サイト利用は無料・低料金

 GAEは無料で使用開始することができ、かなりのデータ量やアクセス数までは無料のままで使用することができます。有料の範囲で使用する場合も、一般のホスティングサービスに比べてかなり低料金になりますが、特に図4のように一定期間だけアクセス数が急増するような場合には有効です。つまり、ホスティングサービス利用するような場合は、常に最大負荷を超えるサーバ能力で契約する必要がありますが、GAEの場合は使用した分だけの料金になるため無駄な料金支払は発生しません。

図1-5 ホスティングサービスとクラウド(GAE)での使用料金
図1-5 ホスティングサービスとクラウド(GAE)での使用料金
6)サイト立ち上げスピード

 ここまで見てきた環境が整っていれば、新規サイトを立ち上げるのはものの数分で可能。新規に行う場合でも、1~2日後には立ち上げを完了できることから、緊急時の迅速なサイト立ち上げが可能です。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 清野 克行(セイノ カツユキ)

    慶應義塾大学工学部電子物理専攻卒。日本IBM、日本HPで、製造装置業を中心とした業務系/基幹業務系システムのSE/マーケティングや、分散アプリケーションによる社内業務システム開発などに携わる。現在は、クラウドやAjax関連の/ソフト開発/書籍執筆/セミナー講師/コンサルティング、などを行っている。情...

バックナンバー

連載:サーバ側コーディング不要のGoogle App Engine開発ツール「gaedirect」
All contents copyright © 2005-2017 Shoeisha Co., Ltd. All rights reserved. ver.1.5