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.3.tar.gz (186.9 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.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (395.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

coredis-3.11.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (246.0 kB view details)

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

coredis-3.11.3-cp311-cp311-macosx_11_0_arm64.whl (307.4 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

coredis-3.11.3-cp311-cp311-macosx_10_9_x86_64.whl (311.4 kB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

coredis-3.11.3-cp311-cp311-macosx_10_9_universal2.whl (391.4 kB view details)

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

coredis-3.11.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (397.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

coredis-3.11.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (400.2 kB view details)

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

coredis-3.11.3-cp310-cp310-macosx_11_0_arm64.whl (309.1 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

coredis-3.11.3-cp310-cp310-macosx_10_9_x86_64.whl (313.0 kB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

coredis-3.11.3-cp310-cp310-macosx_10_9_universal2.whl (394.7 kB view details)

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

coredis-3.11.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (396.2 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

coredis-3.11.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (398.9 kB view details)

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

coredis-3.11.3-cp39-cp39-macosx_11_0_arm64.whl (309.0 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

coredis-3.11.3-cp39-cp39-macosx_10_9_x86_64.whl (312.9 kB view details)

Uploaded CPython 3.9macOS 10.9+ x86-64

coredis-3.11.3-cp39-cp39-macosx_10_9_universal2.whl (394.6 kB view details)

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

coredis-3.11.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (392.8 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

coredis-3.11.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (394.1 kB view details)

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

coredis-3.11.3-cp38-cp38-macosx_11_0_arm64.whl (307.7 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

coredis-3.11.3-cp38-cp38-macosx_10_9_x86_64.whl (311.2 kB view details)

Uploaded CPython 3.8macOS 10.9+ x86-64

coredis-3.11.3-cp38-cp38-macosx_10_9_universal2.whl (391.5 kB view details)

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

File details

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

File metadata

  • Download URL: coredis-3.11.3.tar.gz
  • Upload date:
  • Size: 186.9 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.3.tar.gz
Algorithm Hash digest
SHA256 e2bd946f0055d911b2e75456113ca9823f58eeb5048afd85da415541ad4eff9f
MD5 296de5b9fc387ce96e3289cb47d8d042
BLAKE2b-256 1ff8d6490f119a2e62e9e35caf2c1c5defb76a9873d241230bf5955e3343b08d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1b824c97d7b23bce05bbf401f87583d8e8db34742ae1d6ee0480599b592216f9
MD5 f8eda78d9c2b922761b374642c648c67
BLAKE2b-256 14347ed95f8879d3e4afd624ddfeb3dff76718f5597d5d839a5c00251a96f70c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 38c0e9f729b7f1fa9a820192d5677f4d0939c6363aa416451c5bbbb6793127e5
MD5 e66341a29e912def2f9ae52014a22221
BLAKE2b-256 0cb5015f6c503593981cf5ce836a88c7afabb4ed43e01bd0dcde4d9428f4fc6d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 5425780ae62348059e0b7ceb6da9478ecad4d45fd3ea5e82b03a024d2d4cd576
MD5 397cf8ba41e9d57e6a5a1f1db66d63f5
BLAKE2b-256 dafb48bc904a7386fbaa1a8d4285286dbaa2a0ad164f8badf21dba787a22ac71

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 3749906b83d1c39b8adfaa83351dd310cce099bf6123ebd41de0547771276cee
MD5 03e8aaae5b1b1090503b5f6a048b7314
BLAKE2b-256 4291ab057903ffb54a633946401de3af4325755df5c4553fb89814ceb197d652

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 c067bc3fab44bed7cc6fb64606a01e92410b597a7ec8d6f6c2a349917690a56b
MD5 64808b77ac84e65b97b3263d28389ef9
BLAKE2b-256 00d5deb54fa4033893e69eacdf751a90b468b59b2ba2ad50d2423aee83b2bc73

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4d10015c767d12338a01378aa12a05c83e646a5d2c6969c1d8a7db523a997779
MD5 b4e3cd7423a0a028e65370c60f2eb524
BLAKE2b-256 c9f557b10f240bee863d2a0d6e6429f47ca8df8f5b80d2c550cf2e55efa651e1

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 2a44a5b42471adc66f62c9ad5d5e604b7c0b7e2139b098c7310b495ece3b7c99
MD5 026357b36fadd148194e3e8f8290a61c
BLAKE2b-256 4a7f472e3367e31f431d5e452527e5afaa8bb74b16c87d563f605f4760c8033b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 94d5099244ffcc90cd24ec01c38928d7ec28e419789a09d49757e0d6ac095750
MD5 5f73e25e602fd98b4ee375bacc590c22
BLAKE2b-256 c370b3a4815a4b50f823a0883c782ab0c07de5192e1c4072bf33574eb745a178

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 1e79d9efa96424e976bed24ce60a03f0684f13fe1ed3f2e3e74137169ae9c468
MD5 e696d8f9108a83e9c9cb98ad2646549c
BLAKE2b-256 c80ce05918ecf2894987e66c1e16b4e96ac76b17e315ba0d2afbdd00a81574da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 842378ae4c8dd479e9f8aa9ef9fcd9622a6f9805f4e055c248e3f74570082293
MD5 92ab29f1d2038f53b71731a751920183
BLAKE2b-256 df5e8190c818bae3a2596ae05f8839ad9650602fb2d0e66a20c57c8a0f9656ed

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 510e216e7f973c79814c995a9bb1380c0307a5792b268f9ca3d9af042bc4c672
MD5 27258ea7d0c0ef5dab1fec9d77545da0
BLAKE2b-256 bc4ecfca1856d213b95af6c4cbd1078725c89f5cf56b5b5b017be6a0e92ed192

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 568cc709447d32ee9843b3de9c22311817b6d6437d04275572ef696d7ac651dd
MD5 fd1aa00feb539dab3d01e3045d2a1fd9
BLAKE2b-256 afb082ac3ef20479c3a2e040d113c95ff0883f703a1bba73bcb721b8da6e74cf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d901299825c559a75c696a22580989b828ed8d99a7a328f0cf8d0f24a9065066
MD5 a15b03483c9ad2b55701b41177ab00ce
BLAKE2b-256 697124e4b32450c7db2876487ccb379b6346d0ce1e37f0bce478a85e908613b6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 4e5ea8762e0306e851fb6dad15964ce6e93437050ebe4c01c560cd81c1fd7aea
MD5 c9397ba48389a52377966b3b1845cfb6
BLAKE2b-256 0b5ffd4369129cc7a2bc2fb43cd8bbb3891da54067d6a712a9266a48f3f34d72

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b8cf2116a61446d2819f71372816cae482689569a86d3f191d5d53db498abb02
MD5 1dc404991419f9eff196d7475399af04
BLAKE2b-256 064ddab2e59a642a91ba08e457be4528d06d9b0c03017602d317a8506709cf86

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3b5563b8e5fac4bd6edf8acc7686f7aa854666bc172745370bb36e7008e015ef
MD5 c1c5c1859fb718c788d91970d310ce2f
BLAKE2b-256 b0db4fac0a40d86d43fc91f7277921f58389a375f6927cf43d9bd25b8d48b7ce

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7a9dbed8f78d918e7388398a8447f746a4fb113c92991bff92f8869429a253b7
MD5 d3787c9fc13016d80e947e00a86761bf
BLAKE2b-256 66515147ba77c31b1207e6bcb8c9d16a809622408ffc8002a301d6e1e6925de7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 616f74e44c1ee39cd6ec946f01a098848c401c58dd2e0b6a42a9d005f0c91397
MD5 b624a6b72d698ed0426dc676c3797cf5
BLAKE2b-256 ab23fb5e56d7ef9f07b819c96f042ea11d7caaad18626b5d85f900f232950d2f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 6f564b76feda752df17781585434cc1f7926154090c8449841201534ff49c7e0
MD5 6802e735e83e39d4d66a1d622913b38c
BLAKE2b-256 c83c978bfbcd62b09e9ce9f40415be6deba5210b0004a828cdea0682f4334d21

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for coredis-3.11.3-cp38-cp38-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 c2ff6606627f8fdab7fa14794f7b0e995b5e65407bb147e273b7a58b86168139
MD5 56d10b5c5a1019db4a1415ee2d891206
BLAKE2b-256 ca4e15a24e1635685baeb346e21687dff2f6fbb10d5a3d2df5bd9526f02b597c

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