2017-09-28 15 views
1

Google App Engineでは、すべての新しいユーザーを特定のバージョンに誘導できますが、すべての古いユーザーは既存の古いバージョンで引き続きサービスを受けられますか? アイデアは、既存のユーザーを新しい拡張機能と混同するのではなく、新しいユーザーのみが見ることができます。Google appengine - ユーザーに基づくトラフィックの分割

答えて

1

注:まだ使用していません。答えはドキュメントのみに基づいています。

それはCookie splittingを経由して、ユーザごとのクッキーを管理するためのいくつかの作業を、可能です:

クッキーにより、アプリケーションへのトラフィックを分割することを選択した場合、 アプリケーションが指定された名前のクッキーのためにHTTP request headerを検索します

  • クッキーが存在する場合、値はルート要求をするために使用される:0〜999の間の値を含む GOOGAPPUID、。
  • このようなクッキーがない場合、要求はランダムにルーティングされます。

応答がGOOGAPPUIDクッキーが含まれていない場合、それが送信される前に、アプリ は最初0-999 間のランダムな値でGOOGAPPUIDクッキーを追加します。

トラフィックを分割するためにCookieを使用すると、 ユーザーをバージョンに簡単に割り当てることが容易になります。トラフィックルーティングの精度は、 が目標スプリットに0.1%近くなるように到達できます。クッキーの分割が 次のような制限があり、けれども:

  • モバイルアプリを書いたり、デスクトップクライアントを実行している場合、それはGOOGAPPUIDクッキーを管理する必要があります。たとえば、 Set-Cookieレスポンスヘッダーが使用されている場合は、Cookieを保存し、後でリクエストするたびに を含める必要があります。既にブラウザベースのアプリでは が自動的にこのようにクッキーを管理します。

  • 内部リクエストを分割する場合は、余分な作業が必要です。 Googleのクラウドインフラストラクチャ内から送信されるすべてのユーザーのリクエストには、それぞれのリクエストでユーザーのCookieを転送することが必要です( )。たとえば、 アプリから別の アプリまたはそのアプリに送信されたリクエストにユーザーのCookieを転送する必要があります。これらの要求がユーザーから発信されていない場合は、内部の 要求を送信することは推奨されません。

関連する問題