Redis
ナビゲーションに移動
検索に移動
Redis(読み:れでぃす、語源:remote dictionary server)とは、メモリ上にKey-Valueストア(通称:KVS)を構築することができるソフトウェアである。
概要
redisはmemcachedなどに類似したKVSである。 memcachedが単純なデータのみであるのに対してredisでは様々なデータ構造を保存できる。
また、レプリケーションや定期的なメモリからファイルへのバックアップなどの機能も提供しており大規模での運用にも耐えうるとされる。 代表的な採用事例としてはLineのセッション・パーシステンスに採用されていることで有名でもある。
さらにLuaによるサーバーサイドでのスクリプトの実行もサポートしている。
2015年時点のASP.NETではセッションの保存場所として強く推奨されている。 これはAzureではパーシステンスが重要になるためだと思われる。
redisはイタリアのSalvatore Sanfilippo氏が開発したものである。 現在はPivotalやVMwareがスポンサーとなりコミュニティによってオープンソースのもと開発が続けられている。
redisはライセンスにBSDライセンスを採用している。
永続化
redisには定期的にメモリの内容をファイルに書き出す簡易バックアップ機能がある。 あくまで定期実行であり、必ずしもファイルに書き出されているとは限らず、突然のシャットダウンなどでは一部のデータが消失することがある。
インストール
Mac OS X
homebrewでぶちこめ。
brew update brew install redis
普通に起動する。
redis-server /usr/local/etc/redis.conf
普通に起動するのが面倒なので自動起動するようにLaunchDaemonsの設定をする。
ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist