Hello Nicolas,
this looks a cool project. I think there is definitely a need for this
piece of software in many Redis web-related use cases. I'm not sure
how the problem with access control can be solved, but I guess this is
something that can be figured out in the process.
I've some idea about how to implement easy ACLs for the exported
functionalities.
One is of course the ability to just allow a list of commands.
I feel like that the other layer of authentication should be at key
level. That is, if the request comes with a token and this token
matches the "authentication token" for a given key, than the request
is processed otherwise is not.
But probably there are better ways...
I'm really curious about what people will do with Webdis, but I'm
pretty sure such an interface can surely help to scale web
applications where most of the things happen (or can be made
happening) on the javascript side of the application, in the web
client, just processing data we can directly get from Redis via the
HTTP layer.
Cheers,
Salvatore
--
Salvatore 'antirez' Sanfilippo
http://invece.org
"We are what we repeatedly do. Excellence, therefore, is not an act,
but a habit." -- Aristotele
--
You received this message because you are subscribed to the Google Groups "Redis DB" group.
To post to this group, send email to redi...@googlegroups.com.
To unsubscribe from this group, send email to redis-db+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/redis-db?hl=en.
Great job!
Jonathan
>> - GET and POST commands.
>> - JSON output by default, optional JSONP parameter.
>> - Raw Redis 2.0 protocol output with ?format=raw
>> - HTTP 1.1 pipelining (measured over 50,000 http requests per second on
>> a desktop Linux machine with Apache Benchmark).
>> - Connects to Redis using a TCP or UNIX socket.
>> - Restricted commands by IP range (CIDR subnet + mask), returning 403
>> errors for unauthorized clients.
>> - Possible Redis authentication in the config file.
>>
>> My main priorities are client-side timeouts and a working pub/sub system,
>> making it a Comet server using redis pub/sub channels. Adding support for
>> Web Sockets would be pretty cool too.
>> Webdis is pretty fast so far, thanks to the libevent HTTP implementation.
>>
>> I look forward to seeing people play with it and I welcome all comments
>> and
>> suggestions; I'm having fun working on it.
>>
>> Nicolas
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Redis DB" group.
>> To post to this group, send email to redi...@googlegroups.com.
>> To unsubscribe from this group, send email to
>> redis-db+u...@googlegroups.com<redis-db%2Bunsu...@googlegroups.com>
Do you know ngx_redis2? ;)
https://github.com/agentzh/redis2-nginx-module
It seems to me that these REST interfaces can be easily configured
using ngx_redis2 (or possibly combined with ngx_lua) :) And yeah,
performance may not be that great as your simple http server
implementation but we can have many more functionalities offered by
the nginx ecosystem :)
Cheers,
-agentzh
On Tue, Dec 28, 2010 at 11:33 PM, Jonathan Leibiusky <iona...@gmail.com> wrote:
> This is very cool!
> Does it support pub/sub?
See the README, its on the todo list.
Bye,
--
Pedro Melo
http://www.simplicidade.org/
xmpp:me...@simplicidade.org
mailto:me...@simplicidade.org
--Vladimir
This looks pretty interesting as a way to quickly integrate redis
storage into apps -- not that the redis client interfaces tend to be
that hard to work with, but for direct-to-browser stuff this and the
nginx work will be helpful.
Do you plan any support for If-Modified-Since? In a bunch of my
redis-backed toys the limiting factor on responsiveness is network
bandwidth, and the only thing faster than sending back data from redis
is not sending it back at all! To do it well, you'd want redis to
track mtime per-key, probably, so that your I-M-S calculations could
just be against max(mtime(key1), mtime(key2), mtime(keyN)).
I have been meaning to sketch a proposal for TOUCH $key, MTIME $key,
MTIMEMAX $key1 $key2 ... $keyN, and a sort option on key-mtime, but
haven't had the round tuits. Thanks for the reminder. :-)
Mike