Skip to main content

asyncio (PEP 3156) Redis support

Project description

asyncio (PEP 3156) Redis support

https://travis-ci.org/aio-libs/aioredis.svg?branch=master https://coveralls.io/repos/aio-libs/aioredis/badge.png?branch=master

Documentation

http://aioredis.readthedocs.org/

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.3 (xxxx-xx-xx)

0.2.2 (2015-07-07)

  • Decoding data with encoding paramter now takes into account list (array) replies (see https://github.com/aio-libs/aioredis/pull/68);

  • encoding parameter added to following commands: - generic commands: keys, randomkey; - hash commands: hgetall, hkeys, hmget, hvals; - list commands: blpop, brpop, brpoplpush, lindex, lpop, lrange, rpop, rpoplpush; - set commands: smembers, spop, srandmember; - string commands: getrange, getset, mget;

  • Backward incompatibility:

    ltrim command now returns bool value instead of ‘OK’;

  • Tests updated;

0.2.1 (2015-07-06)

0.2.0 (2015-06-04)

0.1.5 (2014-12-09)

  • AutoConnector added;

  • wait_closed method added for clean connections shutdown;

  • zscore command fixed;

  • Test fixes;

0.1.4 (2014-09-22)

  • Dropped following Redis methods – Redis.multi(), Redis.exec(), Redis.discard()

  • Redis.multi_exec hack’ish property removed

  • Redis.multi_exec() method added

  • High-level commands implemented:

    • generic commands (tests);

    • transactions commands (api stabilization).

  • Backward incompatibilities:

    • Following sorted set commands’ API changed:

      zcount, zrangebyscore, zremrangebyscore, zrevrangebyscore;

    • set string command’ API changed;

0.1.3 (2014-08-08)

  • RedisConnection.execute refactored to support commands pipelining (see http://github.com/aio-libs/aioredis/issues/33);

  • Several fixes;

  • WIP on transactions and commands interface;

  • High-level commands implemented and tested:

    • hash commands;

    • hyperloglog commands;

    • set commands;

    • scripting commands;

    • string commands;

    • list commands;

0.1.2 (2014-07-31)

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aioredis-0.2.2.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

aioredis-0.2.2-py3-none-any.whl (31.9 kB view details)

Uploaded Python 3

File details

Details for the file aioredis-0.2.2.tar.gz.

File metadata

  • Download URL: aioredis-0.2.2.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for aioredis-0.2.2.tar.gz
Algorithm Hash digest
SHA256 15f7911146709dc32c836a1095d46955e91f8d62d383eceda67d634a58f4c5e6
MD5 80c628aff6b74e2e387efed224390606
BLAKE2b-256 b4b7065451022c6a8fb46dd70a18a92d0a8f2e3472f9da75790eecd292716c52

See more details on using hashes here.

File details

Details for the file aioredis-0.2.2-py3-none-any.whl.

File metadata

File hashes

Hashes for aioredis-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3a6b7f56b80d50724c04bb36febe4734a17dcf19f1390e240557c747d8be2c5b
MD5 8318f1245f4a1927b0492393541d9373
BLAKE2b-256 14c1ae84bee1b7761be0868aa90d41ea0f23cff5a8311cbd75df921dddb1ea1b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page