Skip to main content

Python async client for Redis key-value store

Project description

coredis

docs codecov Latest Version in PyPI ci Supported Python versions

coredis is an async redis client with support for redis server, cluster & sentinel.

Installation

To install coredis:

$ pip install coredis

Feature Summary

Deployment topologies

Application patterns

Server side scripting

Miscellaneous

Quick start

Single Node client

import asyncio
from coredis import Redis

async def example():
    client = Redis(host='127.0.0.1', port=6379, db=0)
    await client.flushdb()
    await client.set('foo', 1)
    assert await client.exists(['foo']) == 1
    await client.incr('foo')
    await client.incrby('foo', increment=100)

    assert int(await client.get('foo')) == 102
    await client.expire('foo', 1)
    await asyncio.sleep(0.1)
    await client.ttl('foo')
    await asyncio.sleep(1)
    assert not await client.exists(['foo'])

asyncio.run(example())

Cluster client

import asyncio
from coredis import RedisCluster

async def example():
    client = RedisCluster(host='172.17.0.2', port=7001)
    await client.flushdb()
    await client.set('foo', 1)
    await client.lpush('a', [1])
    print(await client.cluster_slots())

    await client.rpoplpush('a', 'b')
    assert await client.rpop('b') == b'1'

asyncio.run(example())
# {(10923, 16383): [{'host': b'172.17.0.2', 'node_id': b'332f41962b33fa44bbc5e88f205e71276a9d64f4', 'server_type': 'master', 'port': 7002},
# {'host': b'172.17.0.2', 'node_id': b'c02deb8726cdd412d956f0b9464a88812ef34f03', 'server_type': 'slave', 'port': 7005}],
# (5461, 10922): [{'host': b'172.17.0.2', 'node_id': b'3d1b020fc46bf7cb2ffc36e10e7d7befca7c5533', 'server_type': 'master', 'port': 7001},
# {'host': b'172.17.0.2', 'node_id': b'aac4799b65ff35d8dd2ad152a5515d15c0dc8ab7', 'server_type': 'slave', 'port': 7004}],
# (0, 5460): [{'host': b'172.17.0.2', 'node_id': b'0932215036dc0d908cf662fdfca4d3614f221b01', 'server_type': 'master', 'port': 7000},
# {'host': b'172.17.0.2', 'node_id': b'f6603ab4cb77e672de23a6361ec165f3a1a2bb42', 'server_type': 'slave', 'port': 7003}]}

To see a full list of supported redis commands refer to the Command compatibility documentation

Compatibility

coredis is tested against redis versions 6.0.x, 6.2.x & 7.0.x. The test matrix status can be reviewed here

coredis is additionally tested against:

  • hiredis >= 2.0.0
  • uvloop >= 0.15.0

hiredis if available will be used by default as the RESP (or RESP3) parser as it provides significant performance gains in response parsing. For more details refer to the the documentation section on Parsers

Supported python versions

  • 3.8
  • 3.9
  • 3.10

Experimental Backends

coredis has experimental support for the following redis compatible backends:

References

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.

Source Distribution

coredis-3.11.0.tar.gz (186.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

coredis-3.11.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (395.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

coredis-3.11.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (245.9 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

coredis-3.11.0-cp311-cp311-macosx_11_0_arm64.whl (307.3 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

coredis-3.11.0-cp311-cp311-macosx_10_9_x86_64.whl (311.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

coredis-3.11.0-cp311-cp311-macosx_10_9_universal2.whl (391.3 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

coredis-3.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (397.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

coredis-3.11.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (400.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

coredis-3.11.0-cp310-cp310-macosx_11_0_arm64.whl (308.9 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

coredis-3.11.0-cp310-cp310-macosx_10_9_x86_64.whl (312.9 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

coredis-3.11.0-cp310-cp310-macosx_10_9_universal2.whl (394.5 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

coredis-3.11.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (396.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

coredis-3.11.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (398.7 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

coredis-3.11.0-cp39-cp39-macosx_11_0_arm64.whl (308.9 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

coredis-3.11.0-cp39-cp39-macosx_10_9_x86_64.whl (312.8 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

coredis-3.11.0-cp39-cp39-macosx_10_9_universal2.whl (394.4 kB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

coredis-3.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (392.7 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

coredis-3.11.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (393.9 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

coredis-3.11.0-cp38-cp38-macosx_11_0_arm64.whl (307.6 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

coredis-3.11.0-cp38-cp38-macosx_10_9_x86_64.whl (311.1 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

coredis-3.11.0-cp38-cp38-macosx_10_9_universal2.whl (391.4 kB view details)

Uploaded CPython 3.8macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file coredis-3.11.0.tar.gz.

File metadata

  • Download URL: coredis-3.11.0.tar.gz
  • Upload date:
  • Size: 186.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for coredis-3.11.0.tar.gz
Algorithm Hash digest
SHA256 6f1e1b4e51a2f63b458cd5d1dd0ce846542af000e04df0b7bc689a54b191476e
MD5 b232b7f448124c0e4ad45895ba5383fe
BLAKE2b-256 814da81000871c687a4ddfe42df329247b92e4b58b340d40be22a08e60cbe7da

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1112c296c4178780f2f2b196c5e0e51a85bced120d8555b86909fd6897885ed4
MD5 97e4913e9ff2d47822f23700d5923a31
BLAKE2b-256 ad3f3d28b4cca84c3bfaf1bb99feaf29d30a97bd41870ee26f0c4a1b0ef764ae

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 546c15668fd9cf2fcec3e34316b9f9a0ee61866bb0c225c2186bcd8606551881
MD5 c6041a10aa082ecc44acd52ecec37d7f
BLAKE2b-256 ed565da1e731442a8637c7292f4d1c6c19238ec90960aac442245b2bc8c62f5f

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 44c688ede24b31671a9a4a97d3252b5b7890209c4391d08c1bdeb5d9e0fbb08b
MD5 2b2600de0d68883121ccd7e53629f602
BLAKE2b-256 a12818abf9499fd4e59911e67e8421a48910e297966e736fc03ec231b53ad8f6

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2e3fc74119f33e009c07f8aee3975bf7c60f495e5213d77e8bb8d21c2f50952d
MD5 f579623e46b390fd279dd9da0cdef3ea
BLAKE2b-256 b35c05b297e89b2c788ce785996fc31e1f8484ecb4663ec68820ba47cc23c679

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 7d6957c427574d5189caedaa26caf7367d45f8fc3de1f14edeaa04f0259e8947
MD5 8b5831c5fcb75ca3aa975acae7d15111
BLAKE2b-256 7aaef0134857354149efa516e90a0052d13ea48d03e7c6d577e258bee2410277

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ddd21718ba10289c1f5e7031df4736adff9f30e5c7c7d5c6351050bd73103ea7
MD5 ee5e60c9ee6f7e6461523f33f2513b9b
BLAKE2b-256 239f48b09a3dac5dda504c927a200b756fd47b8ceaa1d5792309d38b9d2e9c13

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 52b22a19fbd6ea83d69c0f8f8185eb68a1b9a900768b26a78fecd17b9e121218
MD5 69d3ac43760e561b5077a8b6767be4a1
BLAKE2b-256 aacc16d0b677c9cab2860c80214209c5305689a6de9dd125a41e0fea668f16da

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5026279614a1e5188dffec507aaa32e383621564514336f21ae76d229742bd23
MD5 415f5253af5c1c19cffeb0560530758a
BLAKE2b-256 66135b49225e223f1b45d1219d4cf94741c5fe9476beb6160eb5911d142d0ba5

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 838bfae1896cc9afb49c1f6c1584a60e905dbcc6f92bd6250330f0e8790af81f
MD5 bbf90c5a60644480331bc49cb7e8ba4e
BLAKE2b-256 b00f8d97d3980ea4f9184c813547c775bb3f3bc05254b630753330256d5a91b3

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 052b8881db6b02d569c0a0236965aab8f8986e2e83b79381977668a25b1ecb9c
MD5 7a259fb350d26da84c59d6576413dbd2
BLAKE2b-256 1af5ae7e951ef6515107e5c576bfccde5ee5c9fca1c625aecb788328c83e6757

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cf066294c7a2a884b2d5a9be53e2d04e84189a07fbea0ddd7a9ebfd20f2f2dc1
MD5 83d1d2ac4db9d44e499628067cbde951
BLAKE2b-256 f7ab57218c23074d825b1dc8bd3a560c33ef8cad96282492e6c8ee040f0b58a4

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 883863627e3ad865095b67972f1d70a364501475823250d2ae4d1c844c72049d
MD5 af2e666a2e0d048b1c4e1907fcc187d4
BLAKE2b-256 33c6b64d2c6370f6f71fbc94760d7d8d857499f32febd1172e0f538e7892284b

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 55e3987fe4b54332f0c98a818610241fe9bf132355503085f80852b2d941f838
MD5 6ded8941d3506cdcdcaafd57367b2f18
BLAKE2b-256 fd1585dcb67c4e751f3dea8fd9656b4846149d61dca8704bfd33a1b0b94cb334

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 9cea392dd8c357c7359aadf8b4ff0c225c0f40cfa3d7fb55477ec8db7abab9f7
MD5 a7622ba77e563d68c8ec02039c20bdd6
BLAKE2b-256 ff72292dca4e3144a2de9e5710f89a58d0c5611a0368ac9fd772401519089017

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b64a3cf4cf9a906908cef9ec10a1ab2443c5e2523b7da572bd5ed7e8343610b8
MD5 dfa2cea7b090b2b18940ea444ec6c242
BLAKE2b-256 0b93a11af622e6931b9224bb960ff8b4e0c42ea041d6378987f2d27323edd4e6

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8024a48a75f058cfda3bdc5986dc61b0bf5442241effba7c1221721803c16bec
MD5 14ec4175d0e0f1a8f294f60ebe609490
BLAKE2b-256 a519e0679d4748fc362557513c016c00be79cf49398401c7a419ce90645fa694

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 647e5bab18d3848b366e954284baeb880ad1e04483358763e5af99e8143b77a9
MD5 c32d545d4d6baf3a48cb7aff0c7f23fe
BLAKE2b-256 9476e8f4bbb347e1d30b1d04a59fb0413698dd410cb7f4eae0bb4b3b8d56d589

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d76c09ae70b2d927f3163a4ac9a8465b204d73e3c9af925510c99a0dff86d200
MD5 58cd04d725c0a06f0dc930fe3d34936f
BLAKE2b-256 46f60324dc692c8561b4a6dd76b206fbf4bb27d1ab7f04ab1d846af3a80120ac

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 16eaa750d86fc839cec2fe2e2047773fcbf5fd486202f218908ce3605f4f029c
MD5 25eb61a39c4f0277703b0cf25771160f
BLAKE2b-256 56d73305280c837ca0c452fa2718fb562ad255935b945fff7ec24c78f4f2c87a

See more details on using hashes here.

File details

Details for the file coredis-3.11.0-cp38-cp38-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for coredis-3.11.0-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 383f7594d432c0e28d6e64b4ca50c43d1bffaeae808412ded71164f478e6a1be
MD5 8d43f5892a93169c1218062e16bb31ce
BLAKE2b-256 fc73ee6e76cddb9a536671f61ce090238056cc07c13e73411cad6598c72e253f

See more details on using hashes here.

Supported by

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