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

0.2.3 (2015-08-14)

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.3.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

aioredis-0.2.3-py3-none-any.whl (33.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for aioredis-0.2.3.tar.gz
Algorithm Hash digest
SHA256 22b121cb830621fa3706e811d6d0ea32d7d29f7817f86fa591c6d3cab0d4ed7b
MD5 075c97290a7ac0a1d9eb7a4f919911cc
BLAKE2b-256 665aa35f0084730133c4eae3681293073c942e5b4d3ae377bdfbe2519e1b0919

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aioredis-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e63363df647229b6de8dfb1d79e391980574ce29b34eab260d2979b1defe48af
MD5 931abd35638dc0779997e0e913a8b38b
BLAKE2b-256 b126077948a26e819348786b909034cf86c2910de31b41fb060f8dec90ef7298

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