created: 2021-02-18T07:29:10.000Z
Redis::Fast の sentinel 引数ってなに?
プロジェクトでこんな設定でRedisを動かしていたが、なんで動いているか分からなかった。
Redis::Fast
のPODにはsentinelsのことは記載がない。
Redis::Fast->new(
sentinels => ['redis-sentinel:26379']
service => 'master'
reconnect => 10
);
PODしか読んでいなかったが、PODに書いてないだけで、機能としては実装されていた。 最近はnpmパッケージと仕事をしていたので、わたくし甘やかされていました。
- Redis::Fast - Perl binding for Redis database - metacpan.org
- Support for Redis Sentinel · Issue #6 · shogo82148/Redis-Fast
使い方の説明もこちらに書いてあった。
コネクションを作るときに sentinels を渡すと Redis Sentinel から接続情報を取ってきてくれます。 一緒に reconnect を設定しておいてあげると、Masterに何かあった時に接続情報を再取得→ 自動的に Slave へフェールオーバーしてくれます。
便利