0
私はRedisを勉強しています.INCRを使用して一意のユーザーIDを生成するのが良いかどうか、もしそうでない場合は、問題に。注意:この質問には他のデータベースは含まれていないと仮定しますRedisでユーザーIDを保存するためのベストプラクティス
ランダムなuuid()を生成してそれを使用するアプローチが考えられますが、両方のアプローチが受け入れ可能な場合は、どのようなトレードオフですか? INCRがアトミックであるため、これは有効なアプローチである
uid = db.incr("users:enum")
pipe = db.pipeline()
pipe.set("users:%s:uid" % username, uid)
pipe.set("users:%s" % username, password_hash)
pipe.sadd("users", username)
トレードオフは最小ですが、プロセスID、タイムスタンプなど、プロセスがすでに「知っている」など、プロセスを通過する必要なく、「uuid()」などのものを使用する方が高速になる可能性があります。レディスへの操作は軽微な遅延を招く可能性があります。 – woozyking