PerlのRedis.pmにon_connectが欲しい


現在、Mojolicious::Plugin::Session::Store::Redisを使ってセッション管理をしているんですが、依存しているRedisモジュールの場合、selectなどしていた場合、再コネクト時には維持してもらえず、0に戻ってしまう。

そのため、現状は下記のようにpingが成功した際に毎回selectを行うようにしている。ただ、これだとget時に接続が切れた場合には対応出来ないので全体をラップするなどする必要が出てきたり、面倒な事になりそう。

広告
if ( $redis->ping ) {
    $redis->select($dbidx);
}
my $hoge = $redis->get('hoge');

下記で実装されているon_connectがあれば、接続完了時のコールバックを定義できるので、そこでselectなどしてあげれば全ての場合で対応が出来そう。ただ、コレがまだリリースされていない。

melo/perl-redis · GitHub

リリースが待ち遠しい。

関連記事