1

登録モジュールで redis を使用したいときに問題が発生しました。MVC ではなく、asp.net Web サイトです。ユーザーは、メールアドレスと携帯電話番号を送信すると、私の Web サイトに登録できます。私のアプリケーションは、新しいユーザーが一意であることを検証します。検証パイプラインは、SQL サーバーでデータを検証します。同時実行登録アクションが多数ある場合、SQL に 2 つの同じデータを挿入します。この問題を解決するには、redis を使用してキャッシュします登録アクション。登録アクションが開始されると、最初のステップで、redis をチェックし、リクエストが redis に存在しない場合は redis に挿入し、同じリクエストがある場合は false を返します。ServiceStack.Redis を使用します。これは .net 用の redis クライアントです。私の問題は次のとおりです。2つの同じリクエストがredisを操作する場合、それらはAとBであると定義します.Aは同じリクエストが存在しないことを発見し、次に、B も同じリクエストが存在しないことを発見し、A は redis に値を設定しようとしますが、B も同じことを試みます。redis はこの状況に対処しましたか? redisで同時実行2つの書き込みリクエストを処理する方法は? ユーザー登録データを保存するには、セットまたはハッシュを使用する必要がありますか?

4

1 に答える 1