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.5.1.tar.gz (70.3 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.5.1-py3-none-any.whl (138.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for qtasks-1.5.1.tar.gz
Algorithm Hash digest
SHA256 b3bfca3291dce887d8e09ec2d0dcd225fee88250ef20c6867451bfc1318736e5
MD5 8f7de5a3f6bcbd0b3c058c284ded332f
BLAKE2b-256 c213749ea4ce5f93f6f1d6789781e888857dfc18eca9b281f8490a6ba6609320

See more details on using hashes here.

File details

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

File metadata

  • Download URL: qtasks-1.5.1-py3-none-any.whl
  • Upload date:
  • Size: 138.5 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.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3bfb59d8abe02610445064fe6b0e2a38962a75db083fbc312fcb494b3a394712
MD5 2e68c0ba7791cd6d1573076c7cd9b3a4
BLAKE2b-256 1e8fbb85a756b8db86befa91b021603b7724d59dc42ee4b3ab2d0920b29ad5f7

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