データとファイルの保存について

App Engine 上にデータとファイルを保存するには、Google Cloud Platform サービスを使用できます。または、ご使用の言語でサポートされていて、App Engine インスタンスからアクセスできる他のストレージ サービスを使用することもできます。サードパーティ データベースは、Compute Engine でホストされているものでも、別のクラウド プロバイダでホストされているものでもかまいません。またオンプレミスでホストされているものや、サードパーティのベンダーが管理しているデータベースも使用できます。

Google Cloud Platform のストレージ サービス

PHP フレキシブル環境で実行される App Engine アプリには、次のいずれかの GCP ストレージ サービスをおすすめします。

  • Cloud Datastore。NoSQL データベース内にデータを保存します。

GCP ストレージ プロダクトの一覧は、Cloud Storage サービスページでご確認ください。

Compute Engine でのホスティング

App Engine インスタンスは、Compute Engine インスタンスと同じプライベート内部ネットワークに含まれています。App Engine アプリは、同じプロジェクト内の Compute Engine でホストされているサービスと通信するときには、公共のインターネットを経由せずに通信できます。多くの場合、アプリはインスタンスの内部 IP アドレスを使用してサービスに接続するので、外部のパブリック IP アドレスをデータベースに割り当てる必要はありません。必要に応じてパブリック IP アドレスを割り当てれば、GCP の外部からデータベースにアクセスできるようになります。

Cloud Launcher を使用すると、Redis、MongoDB、PostgreSQL、Cassandra、Hadoop、Microsoft SQL Server など、一般的な多くのサードパーティ データベースを短時間で Compute Engine にデプロイできます。MySQL または PostgreSQL のデプロイの詳細については、以下のガイドをご覧ください。

他のクラウド プロバイダ

App Engine アプリは、外部のデータベース サーバーと内部のファイアウォールが接続を受け入れるように適切に構成されていれば、他のパブリック クラウドでホストされる外部データベースに接続できます。App Engine アプリがインターネット経由で接続する際は、その外部サービスのパブリック IP アドレスを使用します。

サードパーティ ベンダーが管理するデータベース

MongoDB 用の mLab、Redis Labs のホスト型 Redis キャッシュ機能など、多くのベンダーがマネージド データベース サービスを提供しています。これらのベンダーは、データベースのホスティング、構成、メンテナンスを受け持ちます。App Engine はそれらの外部サービスにインターネット経由で接続できますが、その際は他のパブリック クラウドがそれらのサービスにパブリック IP アドレスを使用して接続するのと同じ方法を使用します。

オンプレミス

既存のオンプレミス データベースを App Engine アプリからアクセスできるようにするには、内部ネットワークとファイアウォールを構成してデータベースにパブリック IP アドレスを提供するか、または VPN を使用して接続します。

Cloud VPN を設定すると、App Engine アプリからオンプレミスのネットワークにアクセスでき、データベース サーバーを一般のインターネットに直接公開せずに済みます。App Engine と Compute Engine は同じネットワーク インフラストラクチャを使用しているため、VPN 接続を利用すると、データベース サーバーの内部 IP アドレスを使用して App Engine アプリとオンプレミス データベースとの接続を確立できます。

本番環境に関する考慮事項

App Engine は、さまざまな指標に基づいて、自動的にアプリケーションを水平スケールするよう構成できます。ウェブ アプリケーションとは異なり、データベースはスケールに対応するために、大規模な変更が必要となることがよくあります。本番環境のアプリケーションでは、トラフィックが急増すると、App Engine からのデータ量がデータベースの容量を急激に上回る場合があります。データベースを構成してデプロイする際は、予想される平均トラフィックの負荷とトラフィック急増時の負荷を考慮に入れる必要があります。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

PHP の App Engine フレキシブル環境に関するドキュメント