1 か月間ブロックされていた問題を解決しようとしています
私はNode.js と Redisを使用してアプリケーションのバックエンドを構築しています。構造上、ある redis テーブルから別の redis テーブルにデータを転送する必要があります (テーブルとは、「select」、つまり「select 2」を使用するテーブルのことです) )
大量のリクエストを受け取り、1 秒間に大量のレスポンスをプッシュし、いくら試してもデータが混ざり合うのを止めることができませんでした。Redis テーブル #2内に格納する必要がある"teacherID"があるとします。そして、Redis テーブル #4に格納する必要がある「studentID」。何を試しても(コードを何度もチェックしました)、teacherID が studentID に入るのを止めることができませんでした。私が試した最後のトリックは、実際に各選択時にコールバックを配置することでした。;
redisClient.select(4, function(err) {
if(err)
console.log("You could not select the table. Function will be aborted");
else {
// Proceed with the logic
}
});
この混乱を簡単に止めることができない理由は何でしょうか? 私を夢中にさせる1つの詳細は、ローカルでもオンラインでも非常にうまく機能することですが、複数のリクエストがサーバーに到達するたびに混合されます. このエラーを防ぐための提案はありますか? (NDA にコードを共有することはできませんが、ロジックが正しくコーディングされていることを確認できます)