webdisはRedisにHTTPアクセスインタフェースをつけ、JSON/JSONPによるデータ取得を可能にする。

webdisはC製/Redis用のオープンソース・ソフトウェア。2010年には大いに盛り上がったNoSQL。数々のソフトウェアが開発され、実践で利用され始めている。その一つがRedisだ。キーをメモリに保存することで拘束性を維持しつつ、データはディスクに書き込まれる仕組みをとっている。


アクセス例

そんなRedisでは各種言語向けにクライアントライブラリを提供している。これらを使うことでRedisへの接続は容易にはなるが、Webからそのまま使うためにはJavaScriptの方が都合が良かったりする。そこで試したいのがwebdisだ。

webdisはRedisにWebインタフェースをラッピングするライブラリだ。Redisには直接アクセスせず、webdisへアクセスすることでJSONベースでのデータのやり取りが可能になる。GETによるデータ取得およびPOSTによるデータ書き込みをサポートしている。

さらにJSONPでの出力もサポートし、Rawデータの取得もできる。その他にもxml/txt/html/png/jpgなどとつければヘッダーを変更できる。libevent2と絡めることでファイルアップロード(PUT)やOPTIONSメソッドにも対応する。さらにBasic認証にも対応するなど、RedisをWebから使いやすくするのにぴったりなライブラリだ。

MOONGIFTはこう見る

Redisではメモリとディスクをうまく使うことで、memcachedとは異なりサーバを落とした後もデータが記録されるようになっている(ただし最後の方のデータは消える可能性がある)。そのため愛用する人も多いのだが、JavaScriptから使えないのが難点ではあった。

各種言語でプロキシを立ててアクセスするのが一般的だったが、webdisならば直接アクセスできるようになる。Redisの可能性を飛躍的に向上させるはずだ。

via webdis: HTTP + JSON API for Redis - The Changelog - Open Source moves fast. Keep up.

nicolasff/webdis - GitHub