Skip to main content

Queue Tasks Framework

Project description

QTasks - Фреймворк для очередей задач.

CI Docs

Документация: https://txello.github.io/qtasks/

PyPI: https://pypi.org/project/qtasks/

QTasks — это современный фреймворк для обработки задач, разработанный с упором на простоту, гибкость и расширяемость. Он легко интегрируется в проекты любого масштаба и подходит как новичкам, так и опытным разработчикам.

Особенности

  • Простой — Легко настраивается и быстро осваивается. Интуитивный API и понятная структура проекта.
  • Настраиваемый — Каждый компонент можно заменить или адаптировать под свои нужды. Вы управляете логикой выполнения.
  • Расширяемый — Поддержка плагинов и модулей позволяет легко добавлять новые возможности и интеграции.

Установка

Базовая установка (Redis по умолчанию)

pip install qtasks

Установка с поддержкой других брокеров

RabbitMQ

pip install qtasks[rabbitmq]

Kafka

pip install qtasks[kafka]

Пример

from qtasks import QueueTasks

app = QueueTasks()

@app.task(name="mytest") # Пример обычной задачи
def mytest(text: str):
    print(text)
    return text

@app.task(name="error_zero") # Пример задачи с ошибкой
def error_zero():
    result = 1/0
    return


# Поддерживает генераторы!
def gen_func(result):
    return result + 1
@app.task(generate_handler=gen_func)
async def test_gen(n: int):
    for _ in range(n):
        n += 1
        yield n

app.run_forever()

# Вызов задачи:
# app.add_task("mytest", args=("Тест",)). task.returning: "Тест"
# error_zero.add_task(). task.status: "ERROR"
# test_gen.add_task(args=(5,)). task.returning: [7, 8, 9, 10, 11]

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

qtasks-1.4.0.tar.gz (59.2 kB view details)

Uploaded Source

Built Distribution

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

qtasks-1.4.0-py3-none-any.whl (115.6 kB view details)

Uploaded Python 3

File details

Details for the file qtasks-1.4.0.tar.gz.

File metadata

  • Download URL: qtasks-1.4.0.tar.gz
  • Upload date:
  • Size: 59.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qtasks-1.4.0.tar.gz
Algorithm Hash digest
SHA256 2738d840abb40fffc9f877b949954283cc9b2e5cfe84c6bb1ca2becf9c6be6b4
MD5 482325e96a412f3490d620d0547681bd
BLAKE2b-256 679cc46bcb708c41e72538b822bba95628b62af5db01de3e44f3cd23e79093b1

See more details on using hashes here.

File details

Details for the file qtasks-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: qtasks-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 115.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for qtasks-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 40be5e16518791c1ebabd9618892d5a198438ce1dfd57907691c753f807fe740
MD5 4e9e8648e79c535a2eae616404e2cf40
BLAKE2b-256 e01b3400aa521ffbf5865b5ca2a3ba021573b308728f397aa9df44f4786daf1b

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