Redis

提供: MonoBook
2015年11月30日 (月) 09:27時点におけるimported>Administratorによる版 (→‎プログラムからの利用)
ナビゲーションに移動 検索に移動

Redis(読み:れでぃす、語源:remote dictionary server)とは、メモリ上にKey-Valueストア(通称:KVS)を構築することができるソフトウェアである。

概要

redisはmemcachedなどに類似したKVSである。 memcachedが単純なデータのみであるのに対してredisでは様々なデータ構造を保存できる。

また、レプリケーションや定期的なメモリからファイルへのバックアップなどの機能も提供しており大規模での運用にも耐えうるとされる。 代表的な採用事例としてはLineセッション・パーシステンスに採用されていることで有名でもある。

さらにLuaによるサーバーサイドでのスクリプトの実行もサポートしている。

2015年時点のASP.NETではセッションの保存場所として強く推奨されている。 これはAzureではパーシステンスが重要になるためだと思われる。

redisはイタリアのSalvatore Sanfilippo氏が開発したものである。 現在はPivotalVMwareがスポンサーとなりコミュニティによってオープンソースのもと開発が続けられている。

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

プログラムからの利用

関連項目

参考文献