Skip to main content

a distributed scheduled task scheduling component written for fast-api

Project description

fast_job

test-report

install

pip install fast-job

UseAge

1.wrapper function to build task

from fast_job import *


@schedule.task('task1', summer="test_task_1", tag='test', description="test_task_1")
def test(tag: int):
    print({"msg": "test_task_1", "tag": tag})
    return {"msg": "test_task_1", "tag": tag}


@schedule.task('task2', summer="test_task_2", tag='test', description="test_task_2")
def test2(tag: int):
    print({"msg": "test_task_2", "tag": tag})
    return {"msg": "test_task_2", "tag": tag}


@schedule.task('task3', summer="test_task_3", tag='test', description="test_task_3")
def task3(tag: int):
    raise Exception(str({"msg": "test_task_2", "tag": tag}))

2.include in your fastApi

from loguru import logger
from fastapi import FastAPI
from example.jobs import schedule, fast_job_api_router
from example.conftest import rdb as redis

app = FastAPI()


@app.on_event("startup")
async def registry_schedule():
    schedule.setup(prefix='test:', logger=logger, redis=redis, distributed=True)


@app.on_event("shutdown")  # 关闭调度器
async def shutdown_connect():
    schedule.shutdown()


prefix = "/test"
app.include_router(fast_job_api_router, prefix=prefix, tags=["jobs"])  # include router

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

fast_job-0.1.16.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

fast_job-0.1.16-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file fast_job-0.1.16.tar.gz.

File metadata

  • Download URL: fast_job-0.1.16.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0b1 CPython/3.9.7 Windows/10

File hashes

Hashes for fast_job-0.1.16.tar.gz
Algorithm Hash digest
SHA256 ec73f564594e335c6178b36c1d86ec416bb287f20ba884abc5fc47f3e1884809
MD5 00a783f82a34187b7e60f0d96d86084c
BLAKE2b-256 837d81d380001d1b04543885875f361aa194c2ec8c96a31f284f8ca68d31b9f4

See more details on using hashes here.

File details

Details for the file fast_job-0.1.16-py3-none-any.whl.

File metadata

  • Download URL: fast_job-0.1.16-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.0b1 CPython/3.9.7 Windows/10

File hashes

Hashes for fast_job-0.1.16-py3-none-any.whl
Algorithm Hash digest
SHA256 bcd9b0a1165c046aac23a4b645118084f6ee311155add440771f0acb46ccce44
MD5 458d09f80314a467e3c1e350e36131db
BLAKE2b-256 da740cdd9e2cc3d7cf1e69146daf46f64575960c5bebc72aa72b98906372c732

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page