私の Web サイトでは、ユーザーは同じユーザー名を保持することが許可されています。ttl
さらに、ユーザーがログインするたびに、ユーザー名を 10 分の redis キーに一時的に保存します。
問題は、Redis を使用して、過去 10 分以内にオンラインで同じユーザー名を共有しているすべてのユーザー ID を見つける方法はありますか?
現在、すべてのキーの値を抽出し、Python で衝突を見つけています。これは、実行時にこれを複数回行う必要があるため (そしてユーザー トラフィックが多いため)、あまり役に立ちません。
一意のユーザー名をキーとしてセットを作成し、すべてのユーザー ID をセットに格納して、同じユーザー名を共有するユーザーを O(1) 検索できるようにすることができたのではないかと仮定します。ただし、10 分間の ttl 条件 (すべてのユーザー名に個別に必要) を犠牲にする必要があります。
ところで、Redis/Lua の初心者なので、noob の質問 (もしそうなら) です。