Repolode
agronholm

agronholm/apscheduler

Biblioteca Python de agendamento de tarefas e filas de tarefas, com gatilhos cron, de intervalo, de calendário e pontuais, além de armazenamento persistente opcional.

Estrelas
7,688
Forks
823
Issues abertas
82
Último commit
há 11 dias

O que é?

APScheduler (Advanced Python Scheduler) é uma biblioteca para executar funções Python em horários programados ou como tarefas enfileiradas. Ela funciona em um único processo para scripts pequenos e também pode abranger vários nós, nos quais vários schedulers e workers compartilham um armazenamento de dados comum.

A biblioteca oferece versões síncrona e assíncrona, atendendo tanto a aplicações baseadas em threads quanto a aplicações com asyncio ou Trio. Agendamentos e tarefas podem ser persistidos em PostgreSQL, MySQL, SQLite ou MongoDB, para sobreviverem a reinicializações e serem compartilhados entre instâncias. PostgreSQL, Redis e MQTT atuam como brokers de eventos quando vários schedulers ou workers precisam se coordenar.

Os gatilhos integrados permitem execuções no estilo cron, em intervalos fixos, baseadas em calendário (a cada X anos, meses, semanas ou dias, no mesmo horário) e pontuais. Os gatilhos podem ser combinados, é possível criar gatilhos personalizados, e as tarefas podem ter limites de concorrência, tolerância a atrasos e jitter aleatório.

Recursos principais

  • 01Gatilhos cron, de intervalo, baseados em calendário e pontuais, além de gatilhos personalizados
  • 02Armazenamento persistente de tarefas para PostgreSQL, MySQL, SQLite e MongoDB
  • 03Brokers de eventos para PostgreSQL, Redis e MQTT, para coordenar vários schedulers e workers
  • 04APIs síncronas e assíncronas (asyncio, Trio)
  • 05Limites de concorrência, de atraso no início e jitter para tarefas

Casos de uso

  • Executar tarefas periódicas em segundo plano dentro de uma aplicação web Python
  • Agendar tarefas recorrentes de sincronização de dados ou limpeza em vários servidores com um banco de dados compartilhado
  • Usar a biblioteca como uma fila de tarefas leve quando não é necessário ter uma fila de tarefas separada
  • Acionar tarefas asyncio ou Trio a partir de uma aplicação ASGI ou WSGI

Antes de usar

  • A série v4.0 é uma versão pré-lançamento e pode sofrer alterações incompatíveis sem um caminho de migração; por isso, não deve ser usada em produção.

Tópicos

Perguntas frequentes

O que é apscheduler?
Biblioteca Python de agendamento de tarefas e filas de tarefas, com gatilhos cron, de intervalo, de calendário e pontuais, além de armazenamento persistente opcional. APScheduler (Advanced Python Scheduler) é uma biblioteca para executar funções Python em horários programados ou como tarefas enfileiradas. Ela funciona em um único processo para scripts pequenos e também pode abranger vários nós, nos quais vários schedulers e workers compartilham um armazenamento de dados comum.
apscheduler é gratuito? Qual é a licença?
apscheduler é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
apscheduler ainda é mantido?
Manutenção ativa. O último commit de apscheduler foi em 26 de out. de 2026.
Para que posso usar apscheduler?
Executar tarefas periódicas em segundo plano dentro de uma aplicação web Python Agendar tarefas recorrentes de sincronização de dados ou limpeza em vários servidores com um banco de dados compartilhado Usar a biblioteca como uma fila de tarefas leve quando não é necessário ter uma fila de tarefas separada Acionar tarefas asyncio ou Trio a partir de uma aplicação ASGI ou WSGI
Onde consigo apscheduler?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/agronholm/apscheduler

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados