Advanced Python Scheduler – Task Scheduling Library for Python

ankitg121 pts0 comments

GitHub - agronholm/apscheduler: Task scheduling library for Python · GitHub

/" data-turbo-transient="true" />

Skip to content

Type / to search

Sign in<br>Sign upAppearance settings

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

agronholm

apscheduler

Public

Notifications<br>You must be signed in to change notification settings

Fork<br>770

Star<br>7.6k

master

BranchesTags

Go to file

CodeOpen more actions menu

Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit

History<br>1,326 Commits<br>1,326 Commits

.github

.github

docs

docs

examples

examples

src/apscheduler

src/apscheduler

tests

tests

tools

tools

.gitignore

.gitignore

.mailmap

.mailmap

.pre-commit-config.yaml

.pre-commit-config.yaml

.readthedocs.yml

.readthedocs.yml

LICENSE.txt

LICENSE.txt

README.rst

README.rst

docker-compose.yml

docker-compose.yml

pyproject.toml

pyproject.toml

View all files

Repository files navigation

Warning

The v4.0 series is provided as a pre-release and may change in a<br>backwards incompatible fashion without any migration pathway, so do NOT use this<br>release in production!

Advanced Python Scheduler (APScheduler) is a task scheduler and task queue system for<br>Python. It can be used solely as a job queuing system if you have no need for task<br>scheduling. It scales both up and down, and is suitable for both trivial, single-process<br>use cases as well as large deployments spanning multiple nodes. Multiple schedulers and<br>workers can be deployed to use a shared data store to provide both a degree of high<br>availability and horizontal scaling.

APScheduler comes in both synchronous and asynchronous flavors, making it a good fit for<br>both traditional, thread-based applications, and asynchronous (asyncio or Trio)<br>applications. Documentation and examples are provided for integrating with either WSGI<br>or ASGI compatible web applications.

Support is provided for persistent storage of schedules and jobs. This means that they<br>can be shared among multiple scheduler/worker instances and will survive process and<br>node restarts.

The built-in persistent data store back-ends are:

PostgreSQL

MySQL and derivatives

SQLite

MongoDB

The built-in event brokers (needed in scenarios with multiple schedulers and/or<br>workers):

PostgreSQL

Redis

MQTT

The 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,<br>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<br>(see the documentation for details).

You can also implement your custom scheduling logic by building your own trigger class.<br>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)

Documentation

Documentation can be found<br>here.

Source

The source can be browsed at Github.

Reporting bugs

A bug tracker is provided by<br>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

About<br>Task scheduling library for Python<br>apscheduler.readthedocs.io/<br>Topics<br>automationcronpythonscheduling<br>Resources<br>Readme<br>MIT license<br>Contributing<br>Contributing<br>Security policy<br>Security policy<br>Activity<br>Stars<br>7.6k stars<br>Watchers<br>127 watching<br>Forks<br>770 forks<br>Report repository

Releases

Used by

Contributors

Languages

You can’t perform that action at this time.

scheduling apscheduler task github python commit

Related Articles