The redis package
Redis (http://redis.io) is an open source, BSD licensed, advanced key-value store. It is often referred as a data structure server since keys can contain different data structures, such as strings, hashes, lists, sets and sorted sets.
This library is a Haskell driver for Redis. It's tested with current git version and with v2.2.4 of redis server. It also tested with v2.0.5 and basic functions are works correctly but not all of them.
You can use Test module from the source package to run unit tests. Try runhaskell Test.hs --help for usage info. Caution! Do not run tests on your working database - test database will be flushed.
There are simple benchmark module included: Benchmark.hs. It shows me about two times less requests per second than redis-benchmark from server distribution.
Please let me know if tests or benchmark goes terribly wrong.
Changes from v0.10:
Simple optimisation of redis protocol replays parsing that leads to significant speed improvement on get-like commands
New commandline options for test runner (see above)
Simple benchmark included (see above)
New commands implemented: brpoplpush (blocking rpoplpush), getrange, setrange, getbit and setbit
getType reply is now parsed into RedisKeyType datatype instead of just returning Reply. Warning! It's backward incompatible!
info reply is now parsed into Map String String. Warning! It's backward incompatible!
|Versions||0.1, 0.2, 0.3, 0.3.1, 0.4, 0.5, 0.5.1, 0.5.2, 0.6, 0.7, 0.7.1, 0.7.2, 0.8, 0.8.1, 0.9, 0.10, 0.10.1, 0.11, 0.12, 0.12.1, 0.13|
|Dependencies||base (<5), bytestring, containers, MonadCatchIO-mtl, mtl, network, old-time, parsec, utf8-string|
|Copyright||Copyright (c) 2009-2010 Alexander Bogdanov|
|Author||Alexander Bogdanov <firstname.lastname@example.org>|
|Maintainer||Alexander Bogdanov <email@example.com>|
|Upload date||Wed May 18 14:02:31 UTC 2011|