この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方)
出典検索?: "Google App Engine"
Google App Engine開発元Google
初版2008年4月7日 (16年前) (2008-04-07)
最新版1.9.27 / 2015年9月30日 (8年前) (2015-09-30)
プログラミング
言語PHP, Python, Java, Go
サポート状況開発中
種別ウェブ開発
公式サイトcloud.google.com/appengine/
テンプレートを表示
Google App Engine (GAE) は、Googleの提供するサービスの1つであり、ウェブアプリケーションをPHP・Python・Java・Goを使用して開発し、Googleのインフラストラクチャー上で実行し、バージョン管理することができる。Google Cloud Platformの一部。 PHP用、Python用、Java用、Go用にそれぞれソフトウェア開発キット (SDK) が用意されている。Java用のSDKはSDK単体のものと、Eclipseのプラグインが同社より提供されており、Google Web Toolkitの開発と統合されている。このほか、Java用には有志によりNetBeans用とIntelliJ
概要
GAE上で動くウェブアプリケーションはデータベースとして同社のBigTableにAPIを通じてデータを格納するもので、同社のインフラのスケーラビリティを利用することができる。 Google Compute EngineやAmazon EC2などのスケーラブルホスティングサービスと比較すると、GAEのインフラの方がよりアプリケーションを作成しやすいが、実行できるアプリケーションの種類は限定される。 GAEのインフラにより、数百万ヒットまでスケールするアプリケーションを作成するための開発・運用の問題をかなり軽減できる。Google側にてクラスタへのデプロイ、モニタリング、フェイルオーバー、そして新インスタンスの実行を必要に応じて行う。 他のサービスにおいては、ユーザーがUnix系ソフトウェアはほぼ全てインストール、設定が可能であるのに対し、GAEのデベロッパーは言語として、PythonあるいはJavaを使用し、限られたAPIを使用することを要求される。現在のAPIにより次の機能が実現できる。 既存のウェブアプリケーションはほとんどリレーショナルデータベースが必要なので、修正なしではGAEで実行することはできない。 日ごと、および一分ごとのクォータにより以下のリソースが制限される。 また、個々のリクエストは実行に30秒以上かかったり、10MB以上のデータを返す際には終了させられる。 ただし、SDKのver.1.4.0以降は、バックグラウンドのリクエストにおける 30秒制限の撤廃(10分まで中断されずに実行し続ける)、API 呼び出しのサイズを1MBから32MB増加(URLFetchレスポンスサイズ制限、Memcacheのバッチget/put呼び出し、Image APIのrequest/response、Mail API の送信添付ファイルのサイズ制限)が行われた。 この節には独自研究が含まれているおそれがあります。問題箇所を検証し出典を追加して、記事の改善にご協力ください。議論はノートを参照してください。(2023年5月) GAEのデータストアはSQLのようなシンタックスを持ち、GQLと呼ばれる。GQLにおけるSelect句は単一のテーブルにのみ実行可能である。GQLは敢えてJoin
他のアプリケーションホスティングとの相違
BigTableという非リレーショナルなデータベースへのデータの格納および抽出
HTTPリクエストの送信
電子メールの送信
画像処理
キャッシング
cron
XMPP通信
帯域
CPU使用量
リクエスト数
並列リクエスト数
APIを呼び出す回数
SQLとGQLの違い