10 comments

[ 4.9 ms ] story [ 34.0 ms ] thread
Awesome, might check this out at some point. I love Redis, I think it's wonderful.
Somewhat related - is there any project for viewing the key/value pairs in a redis instance in a more friendly way than via the command-line?

I'd like to be able to enter a key-matching pattern 'users:*' and see the list of all the keys (and metadata like expiration time, number of accesses, update/created time).

EDIT: Found this - http://www.servicestack.net/RedisAdminUI/AjaxClient/# looks like what I was searching for, or at least 80% of it.

This is a very expensive operation if you have a large number of keys, and can easily block redis. keys is intended for debugging a relatively small number of keys.

Basically, if you're having to do this in prod, you may be fucked.

http://redis.io/commands/keys "While the time complexity for this operation is O(N), the constant times are fairly low. For example, Redis running on an entry level laptop can scan a 1 million key database in 40 milliseconds."

You certainly shouldn't use it in production code, but running it on a production database by hand occasionally shouldn't be too bad. (Especially if you have slaves.)

Redis should get an an HTTP API. Would enable you to implement something like this purely in the browser. UIs are really useful from a sys admin point of view. I can also imagine adoption increasing if Redis supported a UI out-of-the-box.
This would be really nice. I tried (unsuccessfully) to get this running locally on OS X. The amount of dependencies required seemed very long.
Redis does have an HTTP API, called Webdis. It takes the form of a server that sits in front of Redis, which may be not quite what you were talking about, but I find to be a very clean design. It's fast and full-featured, and is as easy to install as Redis itself. Just get the code, run make, and start the daemon. Maybe add a config file if you want to get really fancy.

http://webd.is/

I've been happy running it in production.

Now this is really interesting. I can think of about a dozen use cases off the top of my head.