asyncio (PEP 3156) Redis support
Project description
asyncio (PEP 3156) Redis support
Documentation
Usage examples
Simple low-level interface:
import asyncio
import aioredis
loop = asyncio.get_event_loop()
@asyncio.coroutine
def go():
conn = yield from aioredis.create_connection(
('localhost', 6379), loop=loop)
yield from conn.execute('set', 'my-key', 'value')
val = yield from conn.execute('get', 'my-key')
print(val)
conn.close()
loop.run_until_complete(go())
# will print 'value'
Simple high-level interface:
import asyncio
import aioredis
loop = asyncio.get_event_loop()
@asyncio.coroutine
def go():
redis = yield from aioredis.create_redis(
('localhost', 6379), loop=loop)
yield from redis.set('my-key', 'value')
val = yield from redis.get('my-key')
print(val)
redis.close()
loop.run_until_complete(go())
# will print 'value'
Connections pool:
import asyncio
import aioredis
loop = asyncio.get_event_loop()
@asyncio.coroutine
def go():
pool = yield from aioredis.create_pool(
('localhost', 6379),
minsize=5, maxsize=10,
loop=loop)
with (yield from pool) as redis: # high-level redis API instance
yield from redis.set('my-key', 'value')
print((yield from redis.get('my-key')))
pool.clear() # closing all open connections
loop.run_until_complete(go())
Requirements
License
The aioredis is offered under MIT license.
Changes
0.2.0 (xxxx-xx-xx)
High-level commands implemented:
generic commands;
hash commands;
set commands;
strings commands;
transactions commands.
0.1.2 (2014-07-31)
create_connection, create_pool, create_redis functions updated: db and password arguments made keyword-only (see http://github.com/aio-libs/aioredis/issues/26);
Fixed transaction handling (see http://github.com/aio-libs/aioredis/issues/32);
Response decoding (see http://github.com/aio-libs/aioredis/issues/16);
0.1.1 (2014-07-07)
Transactions support (in connection, high-level commands have some issues);
Docs & tests updated.
0.1.0 (2014-06-24)
Initial release;
RedisConnection implemented;
RedisPool implemented;
Docs for RedisConnection & RedisPool;
WIP on high-level API.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.