0

ここで、セッションを使用せずに、ページ間でユーザー固有のデータ(名/姓/電子メールなど)を共有する必要がある状況に遭遇しました。

セッションを利用できない理由は、ロードバランサーを使用しているためです。ロードバランサーは、ユーザーの要求に対応するために別のマシンを割り当てる可能性があります。

そのため、私の会社はセッションを利用しないように厳密に述べていました。

データストア(sql)を使用してセッションを保存することはできません。これも、いくつかの制限があるためです。

ここで重要な質問は、セッション/Cookie/データストアを使用せずにユーザー固有のデータを共有するにはどうすればよいかということです。

ユーザー固有の情報を取得するために、リクエストごとにデータベースにpingを実行するオプションが1つ残っています(これは明らかに推奨されるアプローチではありません)。

誰かが私がページ間でユーザー固有の情報を共有するために何ができるかを提案するのを手伝ってもらえますか?

注:MVC4(Razorエンジン)を使用しています

4

2 に答える 2

1

ユーザー固有の情報を取得するために、リクエストごとにデータベースにpingを実行するオプションが1つ残っています(これは明らかに推奨されるアプローチではありません)

実際のところ、それが推奨されるアプローチです。また、データベースに大量のトラフィックが発生することが懸念される場合は、常に結果をキャッシュできます。ユーザー間で情報が混ざらないように、キャッシュにはユーザー固有のキーを使用するように注意してください。また、ノード間などの分散キャッシュの使用を検討することもできmemcachedます。

于 2013-03-01T07:15:00.687 に答える
0

クッキーを使用できます。

  • ブラウザとサーバー間の転送中に追加の負荷がかかります。
  • クライアントマシンに保存されます。
  • カスタム コードを使用して、セキュリティのためにデータを暗号化/復号化できます。
于 2013-03-01T08:52:13.267 に答える