redis-rb を使って Redis に値を保存する際に自動的に圧縮して、取り出す時には自動的に展開してくれたら便利だな、と思って試しに作ってみました。 Redis::Client へのモンキーパッチで、コマンド判別して Zlib::Deflate と Zlib::Inflate 使って圧縮・展開するようにしています。 とりあえず対応している Redis のコマンドは書込みは set, setex, setnx, psetex、読み込みは get だけです。 使い方は以下のような感じ。 # -*- coding: utf-8 -*- require 'redis' require 'redis/distributed' require './auto_compression_redis' REDIS_MASTERS = [ {url: "redis://192.0.2.1:6379/1"
![redis-rb で自動的に圧縮して保存する - akishin999の日記](https://cdn-ak-scissors.b.st-hatena.com/image/square/f66dcc663fb00108b7d57e9d511de3975fe6c77a/height=288;version=1;width=512/http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI%2F51q%2B88SW9rL.jpg)