Trilha Pleno Trilha

Solid Queue: arquitetura de jobs

Este curso lê o código da solid_queue 1.3.2 que move linhas entre as onze tabelas da gem, junto com o SQL que cada movimento produz. Ele cobre a transação de enqueue e o claim do worker com FOR UPDATE SKIP LOCKED e dois índices de polling. Também trata de limites de concorrência como linhas de semáforo e de bloqueio, e de jobs agendados, falhos e tentados de novo. Depois vêm heartbeats de processos, claims órfãos, tarefas recorrentes, pausas e a validação do pool de conexões que pode parar o supervisor no boot. A última aula segue um job por todas as tabelas.

O que você vai aprender

  • ✓A transação de enqueue e por que linhas de execução repetem colunas do job
  • ✓Como reivindicar jobs com FOR UPDATE SKIP LOCKED e os dois índices de polling
  • ✓Limites de concorrência como linhas de semáforo e execuções bloqueadas
  • ✓Jobs agendados, falhos e tentados de novo, e a limpeza de linhas concluídas
  • ✓Registro de processos, heartbeats e o destino de claims órfãos
  • ✓Tarefas recorrentes, pausas de fila e a validação do pool de conexões no boot
Prévia grátis · Aula 1 6 min de leitura

Enfileirar é uma transação, duas tabelas

O curso de nível Júnior "Solid Queue: jobs em background" listou as onze tabelas solid_queue_* desta aplicação e leu o config/queue.yml linha por linha. Parou nos nomes. Este curso lê o código que move linhas entre essas tabelas, usando a solid_queue 1.3.2. Ele captura o SQL que cada movimento…

Ler a aula completa grátis →

Currículo

7 aulas
Digite para buscar...