Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/agronholm/apscheduler
Task scheduling library for Python
https://github.com/agronholm/apscheduler
Last synced: 5 days ago
JSON representation
Task scheduling library for Python
- Host: GitHub
- URL: https://github.com/agronholm/apscheduler
- Owner: agronholm
- License: mit
- Created: 2016-03-27T12:51:50.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2024-10-29T12:22:26.000Z (3 months ago)
- Last Synced: 2024-10-29T14:50:35.617Z (3 months ago)
- Language: Python
- Homepage:
- Size: 5.36 MB
- Stars: 6,238
- Watchers: 131
- Forks: 707
- Open Issues: 35
-
Metadata Files:
- Readme: README.rst
- Contributing: docs/contributing.rst
- License: LICENSE.txt
Awesome Lists containing this project
- stars - agronholm/apscheduler
- awesome - agronholm/apscheduler - Task scheduling library for Python (Python)
- starred-awesome - apscheduler - Task scheduling library for Python (Python)
- awesome-python-backend - _apscheduler_
- stars - agronholm/apscheduler - Task scheduling library for Python (Python)
- stars - agronholm/apscheduler - Task scheduling library for Python (Python)
- awesomeLibrary - apscheduler - Task scheduling library for Python (语言资源库 / python)
README
.. image:: https://github.com/agronholm/apscheduler/actions/workflows/test.yml/badge.svg
:target: https://github.com/agronholm/apscheduler/actions/workflows/test.yml
:alt: Build Status
.. image:: https://coveralls.io/repos/github/agronholm/apscheduler/badge.svg?branch=master
:target: https://coveralls.io/github/agronholm/apscheduler?branch=master
:alt: Code Coverage
.. image:: https://readthedocs.org/projects/apscheduler/badge/?version=latest
:target: https://apscheduler.readthedocs.io/en/master/?badge=latest
:alt: Documentation.. warning:: The v4.0 series is provided as a **pre-release** and may change in a
backwards incompatible fashion without any migration pathway, so do NOT use this
release in production!Advanced Python Scheduler (APScheduler) is a task scheduler and task queue system for
Python. It can be used solely as a job queuing system if you have no need for task
scheduling. It scales both up and down, and is suitable for both trivial, single-process
use cases as well as large deployments spanning multiple nodes. Multiple schedulers and
workers can be deployed to use a shared data store to provide both a degree of high
availability and horizontal scaling.APScheduler comes in both synchronous and asynchronous flavors, making it a good fit for
both traditional, thread-based applications, and asynchronous (asyncio or Trio_)
applications. Documentation and examples are provided for integrating with either WSGI_
or ASGI_ compatible web applications.Support is provided for persistent storage of schedules and jobs. This means that they
can be shared among multiple scheduler/worker instances and will survive process and
node restarts.The built-in persistent data store back-ends are:
* PostgreSQL
* MySQL and derivatives
* SQLite
* MongoDBThe built-in event brokers (needed in scenarios with multiple schedulers and/or
workers):* PostgreSQL
* Redis
* MQTTThe built-in scheduling mechanisms (*triggers*) are:
* Cron-style scheduling
* Interval-based scheduling (runs tasks on even intervals)
* Calendar-based scheduling (runs tasks on intervals of X years/months/weeks/days,
always at the same time of day)
* One-off scheduling (runs a task once, at a specific date/time)Different scheduling mechanisms can even be combined with so-called *combining triggers*
(see the documentation_ for details).You can also implement your custom scheduling logic by building your own trigger class.
These will be treated no differently than the built-in ones.Other notable features include:
* You can limit the maximum number of simultaneous jobs for a given task (function)
* You can limit the amount of time a job is allowed to start late
* Jitter (adjustable, random delays added to the run time of each scheduled job).. _Trio: https://pypi.org/project/trio/
.. _WSGI: https://wsgi.readthedocs.io/en/latest/what.html
.. _ASGI: https://asgi.readthedocs.io/en/latest/index.html
.. _documentation: https://apscheduler.readthedocs.io/en/master/Documentation
=============Documentation can be found
`here `_.Source
======The source can be browsed at `Github `_.
Reporting bugs
==============A `bug tracker `_ is provided by
GitHub.Getting help
============If you have problems or other questions, you can either:
* Ask in the `apscheduler `_ room on Gitter
* Post a question on `GitHub discussions`_, or
* Post a question on StackOverflow_ and add the ``apscheduler`` tag.. _GitHub discussions: https://github.com/agronholm/apscheduler/discussions/categories/q-a
.. _StackOverflow: http://stackoverflow.com/questions/tagged/apscheduler