概要
分散システムにおいて同じリソースにアクセスする際にロック(排他制御)する仕組みを分散ロックといいます。
ロックを用いる背景としては主に2つあり、
目的 | 説明 | 具体例 |
---|---|---|
効率 | 同じ作業を不必要に複数回行わないため | キャッシュのOriginへのリクエストを抑制したい(Cache stampede対策) |
正確性 | データの不整合が起きないようにするため | トランザクション |
Redisを分散ロックに使う場合は主に前者のケースにおいて推奨されます。
環境
- Redis 6.2.0