[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#623528: ITP: webdis -- a simple web server providing an HTTP interface to Redis server

Package: wnpp
Severity: wishlist
Owner: Andriy Senkovych <jolly_roger@itblog.org.ua>

* Package name    : webdis
  Version         : 0.1.0
  Upstream Author : Nicolas Favre-Felix <n.favrefelix@gmail.com>
* URL             : https://github.com/nicolasff/webdis
* License         : BSD
  Programming Lang: C
  Description     : a simple web server providing an HTTP interface to Redis server

A very simple web server providing an HTTP interface to Redis. It uses hiredis,
jansson, libevent, and http-parser.


 * GET and POST are supported, as well as PUT for file uploads.
 * JSON output by default, optional JSONP parameter (?jsonp=myFunction or ?callback=myFunction).
 * Raw Redis 2.0 protocol output with .raw suffix
 * BSON support for compact responses and MongoDB compatibility.
 * HTTP 1.1 pipelining (70,000 http requests per second on a desktop Linux machine.)
 * Multi-threaded server, configurable number of worker threads.
 * WebSocket support (Currently using the “hixie-76” specification).
 * Connects to Redis using a TCP or UNIX socket.
 * Restricted commands by IP range (CIDR subnet + mask) or HTTP Basic Auth, returning 403 errors.
 * Possible Redis authentication in the config file.
 * Pub/Sub using Transfer-Encoding: chunked, works with JSONP as well. Webdis can be used as a Comet server.
 * Drop privileges on startup.
 * Custom Content-Type using a pre-defined file extension, or with ?type=some/thing.
 * URL-encoded parameters for binary data or slashes. For instance, %2f is decoded as / but not used as a command separator.
 * Logs, with a configurable verbosity.
 * Cross-origin requests, usable with XMLHttpRequest2 (Cross-Origin Resource Sharing - CORS).
 * File upload with PUT.
 * With the JSON output, the return value of INFO is parsed and transformed into an object.
 * Optional daemonize.

Reply to: