Skip to content

Visão Geral do Ecossistema

O ecossistema bdot é uma plataforma distribuída de orquestração, execução e monitoramento de fluxos de processos de negócios. O sistema adota uma arquitetura orientada a eventos e microsserviços altamente especializados, projetados para executar integrações, transformações de dados e regras de negócio com baixo tempo de resposta e alta capacidade de escala.


A plataforma resolve o problema de acoplamento e complexidade na construção de pipelines de integração e automação de processos. Em vez de codificar fluxos de integração de forma monolítica, o bdot permite desenvolver, versionar e executar fluxos através de modelos visuais inspirados na notação BPMN 2.0 e componentes reutilizáveis.

Orquestração de Processos

Execução síncrona ou assíncrona de rotinas de negócio a partir de gatilhos HTTP ou chamadas agendadas.

Transformação e Validação de Dados

Aplicação de regras de validação sobre payloads de entrada e execução de rotinas de transformação em tempo de execução.

Integração Heterogênea

Conectividade nativa com serviços externos, bancos de dados relacionais, repositórios de cache, provedores de identidade e chamadas recursivas entre fluxos.

Rastreabilidade e Observabilidade

Coleta passiva de telemetria e métricas de tempo de execução, permitindo auditoria detalhada por sessão e por etapa do fluxo.


A arquitetura do bdot é dividida em três pilares funcionais que operam de forma desacoplada através de comunicação orientada a eventos e mecanismos de cache em memória:

Diagrama de arquitetura de componentes
┌─────────────────────────────────┐
│ Console (Gestão) │
└────────────────┬────────────────┘
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ Entrada (HTTP) │ ──► │ Engine (Roteador)│ ──► │ Broker (Eventos) │
└──────────────────┘ └─────────┬────────┘ └────────┬─────────┘
│ │
▼ ▼
┌──────────────────┐ ┌──────────────────┐
│ Cache de Sessão │ │ Runners │
└──────────────────┘ └─────────┬────────┘
┌──────────────────┐
│ Stats-Telemetria │
└──────────────────┘

1. Camada de Gestão e Agendamento (Controller)

  • Console: Centraliza a administração de projetos, pacotes, fluxos, modelos, variáveis de ambiente, regras de segurança e publicação. Ao alterar ou publicar uma nova versão de fluxo, gera notificações para sincronização imediata do cache de gestão.
  • Agendador: Componente responsável pelo disparo de tarefas programadas. Mantém um scheduler interno sincronizado com as expressões CRON persistidas e aciona a camada de execução nos horários definidos.

2. Camada de Orquestração e Execução (Executor)

  • Engine: Porta de entrada para a execução de fluxos. Recebe as requisições HTTP, realiza validações de segurança (CORS e chaves de API), resolve slugs/códigos do fluxo, inicializa a sessão de execução e publica a primeira etapa no barramento de eventos.
  • Mecanismo de Espera Síncrona: Para requisições síncronas, a engine suspende o processamento da requisição e aguarda a conclusão da sessão através de um canal leve de notificação por subscrição em memória (PubSub), liberando os recursos de rede.
  • Runners: Microsserviços especializados que escutam tópicos específicos no barramento de eventos. Cada runner consome a mensagem de contexto, executa uma tarefa atômica (ex: consulta a banco de dados, chamada HTTP, validação de token) e devolve o estado atualizado ao roteador.

3. Camada de Observabilidade (Stats)

  • Coleta Passiva: A emissão de métricas e históricos de execução ocorre de forma assíncrona para não interferir no tempo de resposta do fluxo principal.
  • Consumidor e API de Estatísticas: Serviço dedicado consome os eventos de telemetria do barramento e os persiste em uma base analítica, disponibilizando dados para consulta de duração, taxa de sucesso, exceções e rastreamento de etapas.