Skip to main content

Object oriented interface to aioredis.

Project description

Actions Status codecov

Async Redis Objects

Some object orient wrappers around the redis interface provided by aioredis.

Notes

  • Included:
    • hash table
    • queue (list)
    • priority queue (sorted set)
    • locks (keys)
  • Includes python implementation with matching interface for mocking.
    from async_redis_objects.mocks import ObjectClient
  • tested on pypy and CPython 3.6 to 3.9
  • API documentation on read the docs

Example

import aioredis
import asyncio
from async_redis_objects import ObjectClient


async def main():
    # Connect with aioredis as normal
    redis = aioredis.Redis(await aioredis.pool.create_pool(address='redis://redis:6379', db=3, minsize=5))

    # Make an object client object with your redis object
    objects = ObjectClient(redis)

    # Access a hash table in redis
    table = objects.hash('hash-table-key')
    await table.set('name', 'Hello World')

    # Access a queue
    queue = objects.queue('queue-name')
    await queue.push(await table.get('name'))
    await queue.push(100000)

    # Access a priority queue
    pq = objects.priority_queue('other-queue-name')
    await pq.push({'name': 'same json serializable object'}, priority=100)
    await pq.push(await queue.pop(), priority=101)
    print(await pq.pop())  # Print Hello World

loop = asyncio.get_event_loop()
loop.run_until_complete(main())

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

async_redis_objects-0.4.1.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

async_redis_objects-0.4.1-py3-none-any.whl (10.3 kB view details)

Uploaded Python 3

File details

Details for the file async_redis_objects-0.4.1.tar.gz.

File metadata

  • Download URL: async_redis_objects-0.4.1.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for async_redis_objects-0.4.1.tar.gz
Algorithm Hash digest
SHA256 12c6384d572e87051393a33f6c05366f698db0497faf2b39adf6aaea2c57a267
MD5 63ddd63e6387c405a3566828227855cb
BLAKE2b-256 49d8bba25bc384ddbf06ce94fda2f0ef10074bb169df82e4af2e5ca75a2fda5b

See more details on using hashes here.

File details

Details for the file async_redis_objects-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: async_redis_objects-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 10.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.8.6

File hashes

Hashes for async_redis_objects-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d9b5ff8ba8bd917861b85a3b74243569179ed047407a2e4511fc046bf5f82b49
MD5 808215bede0fe9ac5a6ba24de71bf5e5
BLAKE2b-256 c5105f86073402fee1d3cc4e9d149b3068e0edeb13b3c722207dfe6841c3fc8f

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