-GAE/J書籍

Google App Engine for Java [実践]クラウドシステム構築 (WEB+DB PRESS plus) (WEB+DB PRESSプラスシリーズ) (WEB+DB PRESS plusシリーズ)

Google App Engine for Java [実践]クラウドシステム構築 (WEB+DB PRESS plus) (WEB+DB PRESSプラスシリーズ) (WEB+DB PRESS plusシリーズ)


Google App Engine for Javaの日本語書籍がAmazonで予約できるようになってます。著者は...あれ、聞いた事ある!...ということで弊社です。現在、最終校正の最中ですから、出版日はいくらか変わるかもしれませんが、そうそう遅くはなりません。秋のSeasarConには間に合うでしょう。予約よろしくお願い致します。320ページの本ですから推して計れると思いますが、GAE/Jのフルスタック本です。しかし、それでも書き漏れがあるぐらい。GAE/Jってだけでも相当奥が深いです。


8/16追記:発売日は、どうやら9月11日になりそうだと聞いています。SeasarConの前日ですね!昨今の出版事情下にしては、結構思い切った刷り数だとか...。

  • まえがき
    • (しっかりよんでくださいw。ぶっちゃけ弊社事業の宣伝です。)
  • 第1章: クラウド時代のインテグレーション
    • クラウドコンピューティングにフォーカスしたさまざまな技術やサービスの登場によって、クラウド型のシステムインテグレーション(クラウドインテグレーション)が現実のものになり、SIerのビジネスモデルの一部は、従来型のシステムインテグレーションからクラウドベースのものへと移行しようとしています。Google App Engineはそのようなクラウドインテグレーションを実現するサービスの1つとして、検索エンジンのデファクトスタンダードとも言えるGoogle Inc.より登場しました。本章では、クラウドコンピューティングの定義、分類、そしてGoogle App Engineの位置づけと競合するサービスについて概観したあと、Google App Engineと、本書で解説するJava版の概要を見ていきます。
  • 第2章: Google App Engineにおける制約
    • 第1章では、Google App Engine(GAE)のメリットとして、大量のユーザがプラットフォームを共有することによって安価なサービスを提供可能にしており、また動的にスケールが可能であることを説明しました。しかし、プラットフォームを共有することによって生まれてくるデメリットもまた存在します。全体で共有しているために、基盤となるプラットフォームをアプリケーション(ユーザ)ごとにカスタマイズすることはできません。たとえば、プラットフォームが提供しているServlet APIのバージョンを好きなものに変更することはできません。同様の理由で、1つのアプリケーション(ユーザ)がプラットフォームを占有することもできません。これらの問題によって、GAE上で動作するアプリケーションには、同時処理可能なリクエスト数、保存可能なデータ量、ファイルへの書き込みの禁止などさまざまな制約が課せられています。本章では、これらの、GAE上で発生する制約について解説していきます。
  • 第3章: Google App Engine for Javaでの開発手順
    • 本章では、実際にGoogle App Engine for Java(GAE/J)でアプリケーションを作成して公開するまでに必要な手順や開発環境の構築方法などについて説明します。さらに、アプリケーションの設定を行うための設定ファイルの説明、またWeb上でアプリケーションを管理するための管理コンソールの機能を紹介します。
  • 第4章: GAEのデータストア
    • GAEでアプリケーションを開発する場合、Googleが所有するBigTableを利用して構築されている、独自のデータストアを利用することができます。BigTableGMailや、Google Readerなどのアプリケーションでも利用されており、GAE上に構築するアプリからでもこの巨大なデータストアを使ってアプリケーションを作ることができます。本章では、このBigTable上に構築されているGAEのデータストアについて、そのしくみ、理解しておくべき特徴などについて解説していきます。
  • 第5章: GAEで用意されているJava拡張API
    • 前章では、Googleのデータストアが、JDO、JPAといったJava標準APIに準拠した形で提供されていることを解説しました。データストアのほかにも、GAE/JのAPI実装にブリッジされているJavaの標準APIがいくつも用意されています。本章ではそれらのJava拡張APIについて、Java標準仕様に沿った利用方法と、GAE/JにおいてネイティブコールにあたるLow-Level APIを使った利用方法の両方を解説します。パフォーマンスチューニングやGAE/Jの細かな機能を使いたい場合など、必要に応じてLow-Level APIを選択できます。
  • 第6章: Google App Engine for Javaのテスト
    • Google App EngineはWebアプリケーションであるため、基本的には一般的なWebアプリケーション開発で行われるテスト手法が有効ですが、GAE独自の要素も存在します。本章では、GAE独自のテスト手法を中心に解説します。
  • 第7章: Googleが提供するサービスとの連携
    • Google App Engine for Java(GAE/J)アプリケーションは、Googleが提供しているほかのサービスと連携させることで活用の幅を広げることができるようになります。 本章ではこれらのサービス連携について、サンプルアプリケーションの作成も交えて紹介していきます。
  • 第8章: Billing
    • Google App Engineでは、QuotaとLimitで述べたように、アプリケーションで利用可能なリソースに対して上限や制限があります。しかし、Billingを有効にし、Googleへの料金支払いができる状態にすることにより、必要に応じて追加のリソースを利用することが可能になります。この章では、Billingの体系、Billingの設定の方法、適切な調整方法について説明します。