Skip to main content

Queue Tasks Framework

Project description

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

CI Docs PyPI Downloads

Документация: 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

if __name__ == "__main__":
    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.6.0.tar.gz (85.8 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.6.0-py3-none-any.whl (171.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for qtasks-1.6.0.tar.gz
Algorithm Hash digest
SHA256 9148c1b4571ef18abf98fc523dfe0b86d0fe02a69afbf5b68a33f506449a9a65
MD5 5da87807fb34466ed2b4b2e3c486c601
BLAKE2b-256 5a9bc401fa6cba15d01048ba18a306da38b7a4678f806ac6b02a4ca183d27b00

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for qtasks-1.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c0ddafc06a2a56ec70662b693fe47d78e97db0e7a53caf426a66ba823a339453
MD5 75228c908e26738e45457dd3ed8e43fb
BLAKE2b-256 cf22b1946897a8f6c3fcc2786e0bf9203e9bfc7bc541da76a9a69494bc8d570a

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