クライアントサイドとサーバーサイド統合の比較
概要
現在、Omnichannel Personalization 製品をサイトに統合する方法として、クライアントサイドとサーバーサイドの2通りの方法があります。両者にはそれぞれ利点と欠点があります。
Algonomy のどの製品を導入する場合でも、それぞれの実装方法の仕組みを理解することが重要です。
小売業者は、実装を最大限に活用するために、Algonomy チームと密接に連携することを望んでいます。多くの機能はセルフサービスですが、Algonomy チームのサポートやトレーニングを活用することで、実装上の問題を回避できます。
Algonomy は、小売業者からの各種フィード(カタログ情報など)を取り込み、さまざまな戦略やルール、リアルタイムで最適なレコメンドを表示するエンジンを用いて、パーソナライズされた商品、コンテンツ、検索・閲覧結果をユーザーに表示します。
顧客が Algonomy 製品を使用するサイトにアクセスすると、そのサイトは顧客とサイトに関する情報を Omnichannel Personalization に送信し、パーソナライズされたコンテンツを受け取ります。このリクエストとレスポンスは、顧客のブラウザから行う(クライアントサイドリクエスト)か、小売業者のサーバーから行う(サーバーサイドリクエスト)かのいずれかです。
Algonomy のデータセンターとバックエンドは定期的に通信を行い、ユーザーの行動ログをバックエンドに送り、ランタイムへの更新をデータセンターに反映させます。各データセンターには現在のランタイムが完全に複製されているため、どのデータセンターが呼び出されても問題ありません。
Algonomy バックエンドには、各種フィード(カタログ更新、オフライン購買データなど)からもデータが取り込まれます。Omnichannel Personalization ダッシュボードもバックエンドを構成します。これらの変更は定期的な更新を通じてデータセンターに反映されます(例:カタログの更新により、ランタイム内のレコメンド内容が変更される)。
クライアントサイド vs. サーバーサイド
クライアントサイド
クライアントサイド実装では、顧客がクライアントのサイトを訪れた際に、小売業者のサーバーが JavaScript コードまたは Omnichannel Personalization サーバーを呼び出す API を含むページを配信します。このコールにはユーザー情報が含まれ、Omnichannel Personalization は最適なパーソナライズ情報(レコメンド、プロモーション、並び替え済みのカタログデータなど)を HTML または JSON 形式で顧客のブラウザに返します。
このセットアップでは、ページが顧客のブラウザから Omnichannel Personalization サーバーへ JavaScript またはクライアントサイド API を介してコールを行います:
サーバーサイド
一方、サーバーサイド実装では、小売業者のサーバーから Omnichannel Personalization サーバーへコールを行います:
どちらの方式を選ぶかは、実装スピード、クッキーの使用、ページ読み込み速度など、小売業者が重視する要素によって異なります。Algonomy チームと連携して判断することを推奨します。
クッキー
クライアントサイド実装では、Omnichannel Personalization サーバーが顧客のブラウザを通じてクッキーを作成し、閲覧履歴や購入履歴、検索語句などの行動情報を記録します。この情報はリクエストごとに読み取られ、ユーザー体験のパーソナライズに活用されます。
ファーストパーティクッキーを作成するには、CNAME DNS レコード(例:recs.yoursitename.com)を作成し、recs.richrelevance.com にポイントする必要があります。これにより、作成されるクッキーはファーストパーティとして扱われます。
クッキーはブラウザの機能であるため、サーバーサイド実装ではクッキーを直接扱うことができません。ブラウザと直接通信しない限り、Omnichannel Personalization サーバーがクッキーを作成することはできません。
クッキープロキシ
サーバーサイド構成では、小売業者はクッキープロキシ(またはクッキーパススルー)として機能させることで、ブラウザのクッキーを Omnichannel Personalization サーバーに渡すことができます。Omnichannel Personalization サーバーがクッキーを要求すると、小売業者のサーバーがブラウザを介してクッキーを取得し、それを Omnichannel Personalization サーバーへ渡します。
バニティ URL
クッキーはドメインごとに分かれているため、たとえば SuperStore.com という小売業者サイトが作成したクッキーは、そのドメインでのみ使用可能です。一方、recs.richrelevance.com が作成したクッキーは richrelevance.com ドメイン内でのみ使用可能です。
このため、デフォルトでは両者の統合間でクッキーが共有されません。これによりログやレポートに誤りが生じ、ユーザー行動に基づくパーソナライズの精度も低下します。
クッキーを共有するには、自社サイトにサブドメイン(例:recs.SuperStore.com)を設定し、CNAME でマッピングし、Algonomy のバニティ URL 機能を利用する必要があります。こうすることで、クッキーは自社ドメインで作成され、サーバーサイド/クライアントサイドの両実装からアクセス可能になります。詳しくは Vanity URLs を参照してください。