2 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01//EN">
5 <link type=
"text/css" rel=
"stylesheet" href=
"style.css" />
12 <img style=
"border:none" alt=
"Redis Documentation" src=
"redis.png">
16 <div id=
"pagecontent">
18 <!-- This is a (PRE) block. Make sure it's left aligned or your toc title will be off. -->
19 <b>SupportedLanguages: Contents
</b><br> <a href=
"#Supported Languages (DRAFT)">Supported Languages (DRAFT)
</a><br> <a href=
"#TODO">TODO
</a><br> <a href=
"#Features Support Matrix">Features Support Matrix
</a><br> <a href=
"#Version 1.1">Version
1.1</a><br> <a href=
"#Version 1.0">Version
1.0</a><br> <a href=
"#Client Libraries Reference">Client Libraries Reference
</a><br> <a href=
"#as3 (ActionScript 3)">as3 (ActionScript
3)
</a><br> <a href=
"#redis-clojure (Clojure)">redis-clojure (Clojure)
</a><br> <a href=
"#CL-Redis (Common Lisp)">CL-Redis (Common Lisp)
</a><br> <a href=
"#erldis (Erlang)">erldis (Erlang)
</a><br> <a href=
"#Go-Redis (Go)">Go-Redis (Go)
</a><br> <a href=
"#haskell-redis (Haskell)">haskell-redis (Haskell)
</a><br> <a href=
"#Java">Java
</a><br> <a href=
"#redis-lua (Lua)">redis-lua (Lua)
</a><br> <a href=
"#Perl">Perl
</a><br> <a href=
"#PHP">PHP
</a><br> <a href=
"#Python">Python
</a><br> <a href=
"#txredis">txredis
</a><br> <a href=
"#redis-rb (Ruby)">redis-rb (Ruby)
</a><br> <a href=
"#scala-redis (Scala)">scala-redis (Scala)
</a><br> <a href=
"#Tcl">Tcl
</a>
22 <h1 class=
"wikiname">SupportedLanguages
</h1>
29 <h1><a name=
"Supported Languages (DRAFT)">Supported Languages (DRAFT)
</a></h1>Wondering if you can use Redis from your favorite language? Well here is the definitive guide to the available client libraries.
<br/><br/>This libraries are intended to expose Redis commands, but you also have the option to use some higher level libraries that provide a
<b><a href=
"ObjectHashMappers.html">Object Hash Mappings
</a></b> pretty much the same idea implemented by a classic
<b>ORM
</b>.
<h2><a name=
"TODO">TODO
</a></h2><ul><li> Add
<a href=
"http://github.com/madsimian/em-redis" target=
"_blank">http://github.com/madsimian/em-redis
</a></li><li> Add
<a href=
"http://github.com/besquared/redis-datastructures" target=
"_blank">http://github.com/besquared/redis-datastructures
</a></li><li> Add
<a href=
"http://github.com/sma/redis-node-client" target=
"_blank">http://github.com/sma/redis-node-client
</a></li></ul>
30 <h2><a name=
"Features Support Matrix">Features Support Matrix
</a></h2> <br/><br/>The following matrix should give you a quick overviwe of the state of the different client libraries existing for each supported language.
<br/><br/>The core command set is the one of Version
1.0, while
<a href=
"Sharding.html">Sharding
</a> and
<a href=
"Pipelining.html">Pipelining
</a> are convenient client side features not tied to any Redis server version.
<h3><a name=
"Version 1.1">Version
1.1</a></h3>Compatible client libraries are expected to implement the command sets specified in
<b>Version
1.0</b> plus:
<br/><br/><ul><li> <b>String
</b>: MSET, MSETNX.
</li><li> <b>List
</b>: RPOPLPUSH.
</li><li> <b>Sorted Set (ZSET)
</b>: ZADD, ZREM, ZRANGE, ZREVRANGE, ZRANGEBYSCORE, ZCARD, ZSCORE.
</li></ul>
31 <h3><a name=
"Version 1.0">Version
1.0</a></h3> <br/><br/>Compatible client libraries are expected to implement the following command sets:
<br/><br/><ul><li> <b>String
</b>: GET, SET, SETNX, DEL, EXISTS, INCR, DECR, MGET, INCRBY, DECRBY, GETSET, TYPE.
</li><li> <b>List
</b>: RPUSH, LPUSH, RPOP, LPOP, LLEN, LINDEX, LSET, LRANGE, LTRIM, LREM.
</li><li> <b>Set
</b>: SADD, SREM, SMOVE, SISMEMBER, SCARD, SPOP, SINTER, SINTERSTORE, SUNION, SUNIONSTORE, SDIFF, SDIFFSTORE, SMEMBERS.
</li><li> <b>Keyspace
</b>: KEYS, RANDOMKEY, RENAME, RENAMENX, DBSIZE, EXPIRE, TTL.
</li><li> <b>Databases
</b>: SELECT, MOVE, FLUSHDB, FLUSHALL.
</li><li> <b>Sort
</b>: SORT
</li><li> <b>Connection
</b>: AUTH, QUIT?. ???
</li><li> <b>Persistence
</b>: SAVE, BGSAVE, LASTSAVE, SHUTDOWN?. ???
</li><li> <b>Server
</b>: INFO, MONITOR? SLAVEOF? ???
</li></ul><blockquote></blockquote><table><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> <b>Language
</b> </td><td style=
"border: 1px solid #aaa; padding: 5px;"> <b>Name
</b> </td><td style=
"border: 1px solid #aaa; padding: 5px;"> <b>Sharding
</b> </td><td style=
"border: 1px solid #aaa; padding: 5px;"> <b>Pipelining
</b> </td><td style=
"border: 1px solid #aaa; padding: 5px;"> <b>1.1</b> </td><td style=
"border: 1px solid #aaa; padding: 5px;"> <b>1.0</b> </td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> ActionScript
3</td><td style=
"border: 1px solid #aaa; padding: 5px;"> as3redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Clojure
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> redis-clojure
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Partial
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Common Lisp
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> CL-Redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Erlang
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> erldis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Looks like
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Looks like
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Go
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Go-Redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Haskell
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> haskell-redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Java
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> JDBC-Redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Java
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> JRedis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> LUA
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> redis-lua
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Perl
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Redis Client
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Perl
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> AnyEvent::Redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> PHP
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Redis PHP Bindings
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> PHP
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> phpredis (C)
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> PHP
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Predis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> PHP
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Redisent
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Python
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Python Client
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Python
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> py-redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Partial
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Python
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> txredis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Ruby
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> redis-rb
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> Scala
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> scala-redis
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr><tr><td style=
"border: 1px solid #aaa; padding: 5px;"> TCL
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> TCL
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> No
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td><td style=
"border: 1px solid #aaa; padding: 5px;"> Yes
</td></tr></table>
32 <h2><a name=
"Client Libraries Reference">Client Libraries Reference
</a></h2><h3><a name=
"as3 (ActionScript 3)">as3 (ActionScript
3)
</a></h3><ul><li> An ActionScript
3 (Flash) library for Redis.
</li><li> Repository:
<a href=
"http://github.com/claus/as3redis" target=
"_blank">http://github.com/claus/as3redis
</a></li><li> Author: Claus Wahlers,
<a href=
"http://twitter.com/cwahlers" target=
"_blank"> @cwahlers
</a>.
</li></ul>
33 <h3><a name=
"redis-clojure (Clojure)">redis-clojure (Clojure)
</a></h3><ul><li> A Clojure client library for the key-value storage system Redis.
</li><li> Repository:
<a href=
"http://github.com/ragnard/redis-clojure" target=
"_blank">http://github.com/ragnard/redis-clojure
</a></li><li> Author: Ragnar Dahl
én,
<a href=
"http://twitter.com/ragge" target=
"_blank">@ragge
</a>.
</li></ul>
34 <h3><a name=
"CL-Redis (Common Lisp)">CL-Redis (Common Lisp)
</a></h3><ul><li> Common Lisp client library for Redis, an advanced key/value store.
</li><li> Home Page:
<a href=
"http://www.cliki.net/cl-redis" target=
"_blank">http://www.cliki.net/cl-redis
</a></li><li> Author: Mahmud,
<a href=
"http://twitter.com/BigThingist" target=
"_blank">@BigThingist
</a>.
</li></ul>
35 <h3><a name=
"erldis (Erlang)">erldis (Erlang)
</a></h3><ul><li> Client protocol for redis key-value store.
</li><li> Author:
<a href=
"http://www.adroll.com/" target=
"_blank">Valentino Volonghi
</a>,
<a href=
"http://twitter.com/dialtone_" target=
"_blank">@dialtone_
</a>.
</li><li> Repository:
<a href=
"http://bitbucket.org/adroll/erldis/" target=
"_blank">http://bitbucket.org/adroll/erldis/
</a></li></ul>
36 <h3><a name=
"Go-Redis (Go)">Go-Redis (Go)
</a></h3><ul><li> Client protocol for redis key-value store.
</li><li> Author: Joubin Houshyar,
<a href=
"http://twitter.com/SunOf27" target=
"_blank">@SunOf27
</a>.
</li><li> Repository:
<a href=
"http://github.com/alphazero/Go-Redis" target=
"_blank">http://github.com/alphazero/Go-Redis
</a></li></ul>
37 <h3><a name=
"haskell-redis (Haskell)">haskell-redis (Haskell)
</a></h3><ul><li> A Haskell binding for the Redis database.
</li><li> Author:
<a href=
"http://obvioushints.blogspot.com/" target=
"_blank">Alvaro Videla
</a>,
<a href=
"http://twitter.com/old_sound" target=
"_blank">@old_sound
</a>.
</li><li> Repository:
<a href=
"http://bitbucket.org/videlalvaro/redis-haskell/wiki/Home" target=
"_blank"> </a></li></ul>
38 <h3><a name=
"Java">Java
</a></h3><h4><a name=
"JDBC-Redis">JDBC-Redis
</a></h4><ul><li> JDBC-Redis is Java driver using the JDBC interface for Redis Database. This project doesn't aim for a complete implementation of the JDBC specification since Redis isn't a relational database, but should provide a familiar interface to Java developers interact with Redis.
</li><li> Repository:
<a href=
"http://code.google.com/p/jdbc-redis/" target=
"_blank">http://code.google.com/p/jdbc-redis/
</a></li></ul>
39 <h4><a name=
"JRedis">JRedis
</a></h4><ul><li> Java Client and Connectors for Redis JCA compliant. Currently offers a complete functioning Synchronous connector, Asynchronous connection and pipelining support under heavy develpment.
</li><li> Author: Joubin Houshyar,
<a href=
"http://twitter.com/SunOf27" target=
"_blank">@SunOf27
</a>.
</li><li> Home:
<a href=
"http://code.google.com/p/jredis/" target=
"_blank">http://code.google.com/p/jredis/
</a></li><li> Repository:
<a href=
"http://github.com/alphazero/jredis" target=
"_blank">http://github.com/alphazero/jredis
</a></li></ul>
40 <h3><a name=
"redis-lua (Lua)">redis-lua (Lua)
</a></h3><ul><li> A Lua client library for the redis key value storage system.
</li><li> Author:
<a href=
"http://www.clorophilla.net/blog/" target=
"_blank">Daniele Alessandri
</a>,
<a href=
"http://twitter.com/jol1hahn" target=
"_blank">@jol1hahn
</a>.
</li><li> Repository:
<a href=
"http://github.com/nrk/redis-lua" target=
"_blank">http://github.com/nrk/redis-lua
</a></li></ul>
41 <h3><a name=
"Perl">Perl
</a></h3><h4><a name=
"Perl Client">Perl Client
</a></h4><ul><li> Perl binding for Redis database.
</li><li> Author:
<a href=
"http://blog.rot13.org/" target=
"_blank">Dobrica Pavlinusic
</a>,
<a href=
"http://twitter.com/dpavlin" target=
"_blank">@dpavlin
</a>.
</li><li> Repository:
<a href=
"http://svn.rot13.org/index.cgi/Redis" target=
"_blank">http://svn.rot13.org/index.cgi/Redis
</a></li></ul>
42 <h4><a name=
"AnyEvent::Redis">AnyEvent::Redis
</a></h4><ul><li> Non-blocking Redis client.
</li><li> Author:
<a href=
"http://bulknews.typepad.com/" target=
"_blank">Tatsuhiko Miyagawa
</a>,
<a href=
"http://twitter.com/miyagawa" target=
"_blank">@miyagawa
</a>.
</li><li> Repository:
<a href=
"http://github.com/miyagawa/AnyEvent-Redis/" target=
"_blank">http://github.com/miyagawa/AnyEvent-Redis/
</a></li></ul>
43 <h3><a name=
"PHP">PHP
</a></h3><h4><a name=
"Redis PHP Bindings">Redis PHP Bindings
</a></h4><ul><li> Simple default binding in Redis main repository. No longer under active development.
</li><li> Author:
<a href=
"http://qix.it/" target=
"_blank">Ludovico Magnocavallo
</a>,
<a href=
"http://twitter.com/ludo" target=
"_blank">@ludo
</a>.
</li><li> Repository:
<a href=
"http://code.google.com/p/redis/source/browse/#svn/trunk/client-libraries/php" target=
"_blank">http://code.google.com/p/redis/source/browse/#svn/trunk/client-libraries/php
</a></li></ul>
44 <h4><a name=
"phpredis">phpredis
</a></h4><ul><li> This extension provides an API for communicating with Redis database, a persistent key-value database with built-in net interface written in ANSI-C for Posix systems.
</li><li> Author:
<a href=
"http://www.alfonsojimenez.com/" target=
"_blank">Alfonso Jimenez
</a> , (
<a href=
"http://twitter.com/alfonsojimenez" target=
"_blank">@alfonsojimenez
</a>), Nicolas Favre-F
élix and Nasreddine Bouafif.
</li><li> Repository:
<a href=
"http://github.com/owlient/phpredis" target=
"_blank">http://github.com/owlient/phpredis
</a></li></ul>
45 <h4><a name=
"Predis">Predis
</a></h4><ul><li> A flexible and feature-complete PHP client library for the Redis key-value database. Predis is currently a work-in-progress and it targets PHP
>=
5.3, though it is highly due to be backported to PHP
>=
5.2.6 as soon as the public API and the internal design on the main branch will be considered stable enough.
</li><li> Author:
<a href=
"http://www.clorophilla.net/blog/" target=
"_blank">Daniele Alessandri
</a>,
<a href=
"http://twitter.com/jol1hahn" target=
"_blank">@jol1hahn
</a></li><li> Repository:
<a href=
"http://github.com/nrk/predis/" target=
"_blank">http://github.com/nrk/predis/
</a></li></ul>
46 <h4><a name=
"Redisent">Redisent
</a></h4><ul><li> Redisent is a simple, no-nonsense interface to the Redis key-value store for modest developers. Due to the way it is implemented, it is flexible and tolerant of changes to the Redis protocol.
</li><li> Author:
<a href=
"http://blog.justinpoliey.com/" target=
"_blank">Justin Poliey
</a>,
<a href=
"http://twitter.com/justinpoliey" target=
"_blank">@justinpoliey
</a></li><li> Repository:
<a href=
"http://github.com/jdp/redisent" target=
"_blank">http://github.com/jdp/redisent
</a></li></ul>
47 <h3><a name=
"Python">Python
</a></h3><h4><a name=
"Python Client">Python Client
</a></h4><ul><li> Simple Python client in Redis main repository. No longer under active development.
</li><li> Author:
<a href=
"http://qix.it/" target=
"_blank">Ludovico Magnocavallo
</a>,
<a href=
"http://twitter.com/ludo" target=
"_blank">@ludo
</a>.
</li><li> Repository:
<a href=
"http://code.google.com/p/redis/source/browse/#svn/trunk/client-libraries/python" target=
"_blank">http://code.google.com/p/redis/source/browse/#svn/trunk/client-libraries/python
</a></li></ul>
48 <h4><a name=
"py-redis">py-redis
</a></h4><ul><li> Redis Python Client.
</li><li> Author:
<a href=
"Andy.html">McCurdy
</a>,
<a href=
"http://twitter.com/andymccurdy" target=
"_blank">@andymccurdy
</a>.
</li><li> Repository:
<a href=
"http://github.com/andymccurdy/redis-py" target=
"_blank">http://github.com/andymccurdy/redis-py
</a></li></ul>
49 <h3><a name=
"txredis">txredis
</a></h3><ul><li> Python/Twisted client for Redis key-value store
</li><li> Author: Dorian Raymer,
<a href=
"http://twitter.com/dio_rian" target=
"_blank">@dio_rian
</a>.
</li><li> PyPI:
<a href=
"http://pypi.python.org/pypi/txredis/0.1.1" target=
"_blank">http://pypi.python.org/pypi/txredis/
0.1.1</a></li></ul>
50 <h3><a name=
"redis-rb (Ruby)">redis-rb (Ruby)
</a></h3><ul><li> A Ruby client library for the redis key value storage engine.
</li><li> Author:
<a href=
"http://brainspl.at/" target=
"_blank">Ezra Zygmuntowicz
</a>,
<a href=
"http://twitter.com/ezmobius" target=
"_blank">@ezmobius
</a>.
</li><li> Repository:
<a href=
"http://github.com/ezmobius/redis-rb" target=
"_blank">http://github.com/ezmobius/redis-rb
</a></li></ul>
51 <h3><a name=
"scala-redis (Scala)">scala-redis (Scala)
</a></h3><ul><li> A scala library for connecting to a redis server, or a cluster of redis nodes using consistent hashing on the client side.
</li><li> Author:
<a href=
"http://www.linkedin.com/in/alejandrocrosa" target=
"_blank">Alejandro Crosa
</a>,
<a href=
"http://twitter.com/alejandrocrosa" target=
"_blank">@alejandrocrosa
</a>.
</li><li> Repository:
<a href=
"http://github.com/acrosa/scala-redis" target=
"_blank">http://github.com/acrosa/scala-redis
</a></li></ul>
52 <h3><a name=
"Tcl">Tcl
</a></h3><ul><li> The official version is included in the Redis tarball since it's maintained by Salvatore.
</li><li> Author:
<a href=
"http://invece.org/" target=
"_blank">Salvatore Sanfilippo
</a>,
<a href=
"http://twitter.com/antirez" target=
"_blank">@antirez
</a></li><li> Repository:
<a href=
"http://github.com/antirez/redis/blob/master/redis.tcl" target=
"_blank">http://github.com/antirez/redis/blob/master/redis.tcl
</a></li></ul>