Skip to main content

Асинхронный инструментарий для работы с Redis Streams и конфигурациями

Project description

RedStream

Асинхронный инструментарий для работы с Redis Streams и конфигурациями.

Описание

RedStream - это Python библиотека, которая предоставляет удобный интерфейс для работы с Redis Streams. Она разработана для создания масштабируемых микросервисных архитектур с использованием Redis в качестве шины обмена сообщениями.

Особенности

  • Асинхронный API для работы с Redis Streams
  • Система роутинга сообщений
  • Работа с группами потребителей (Consumer Groups)
  • Структуры сообщений с поддержкой типизации
  • Отслеживание статусов сообщений в процессе обработки
  • Интеграция с aiogram

Установка

pip install redstream

Простой пример использования

import asyncio
from redstream import RSMessage, RSMessageStatus, RedisStreamRouter

async def main():
    # Инициализация роутера
    router = RedisStreamRouter(
        redis_url="redis://localhost:6379/0",
        stream_name="my_stream"
    )
    
    # Создание сообщения
    message = RSMessage(
        event_type="message",
        message_type="text",
        action="process",
        chat_id="123456",
        user_id="user123",
        text="Привет, RedStream!"
    )
    
    # Отправка сообщения
    await router.publish_message("my_stream", message)
    
    # Обработка сообщений
    async def message_handler(msg):
        print(f"Получено сообщение: {msg.text}")
        return True
    
    # Регистрация обработчика
    router.register_handler("message", message_handler)
    
    # Запуск обработки сообщений
    await router.start_consuming()

if __name__ == "__main__":
    asyncio.run(main())

Лицензия

MIT

Автор

Albert Toma (cornil@mail.ru)

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

redstream-0.1.4.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

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

redstream-0.1.4-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file redstream-0.1.4.tar.gz.

File metadata

  • Download URL: redstream-0.1.4.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for redstream-0.1.4.tar.gz
Algorithm Hash digest
SHA256 ceef99e57f91e99887495d6578aeac3717e44b58db8708aa2a73c52b1fde042a
MD5 fd2638f75869b51f29f1e7e2461a738f
BLAKE2b-256 98688bfddf90d722d3f1879e500ab5262a0150377c77f67ff540ccf211210015

See more details on using hashes here.

File details

Details for the file redstream-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: redstream-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.10

File hashes

Hashes for redstream-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 a5f2e27d5a983313f70e089ed87f7b34257d2221b2db4fe23b119be4b87d62fb
MD5 e24ce67929784f2ccff0a2e7aff143fb
BLAKE2b-256 8ba465a0bc018af5e2aa8e91bc5c2d9ffe0d024c0140ef80c0b9e9739af5fd53

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