公共のインターネットを経由せずに、Google App Engine アプリケーション間で HTTP トラフィックをルーティングすることは可能ですか?
たとえば、あるアプリケーションで Web サービス API を実行していて、パフォーマンス上の理由から、トラフィックがインターネットを通過することなく、その上に 2 つ目のアプリケーションを構築したい場合。
公共のインターネットを経由せずに、Google App Engine アプリケーション間で HTTP トラフィックをルーティングすることは可能ですか?
たとえば、あるアプリケーションで Web サービス API を実行していて、パフォーマンス上の理由から、トラフィックがインターネットを通過することなく、その上に 2 つ目のアプリケーションを構築したい場合。
異なるドメインで実行されている別々のアプリ間で? ないと思います。
ただし、バックエンドを使用して、舞台裏でさまざまな作業を行うことができます。
バックエンドは特別な App Engine インスタンスであり、リクエストの期限がなく、メモリと CPU の上限が高く、リクエスト間で状態が永続的です。それらは App Engine によって自動的に開始され、長期間にわたって継続的に実行できます。各バックエンド インスタンスには、リクエストに使用する一意の URL があり、複数のインスタンス間でリクエストを負荷分散できます。
バックエンド インスタンスとフロント エンド インスタンスの間のログを見ると、次のような IP が表示されます
0.1.0.3
そうです、それらのコミュニケーション パスは内部的なものです。インターネットの大部分がGoogle であるため、異なるアプリ間のリクエストは公共のインターネット上を移動しない可能性があると推測できます。
ログは、フロント エンドとバック エンド間の低遅延通信を示していますが、特定の負荷がかかっているわけではありません。マイレージは異なる場合があります。