Sobre o projeto
O Kontiki fornece um framework padronizado para o desenvolvimento de sistemas distribuídos, substituindo a configuração manual da topologia do broker por convenções de plataforma. Ele utiliza um conjunto de decorators (@http, @rpc, @on_event, @task) para definir pontos de entrada de serviço e interações sobre um modelo compartilhado de identidade, roteamento e saúde da frota.
As principais capacidades incluem:
- Padrões de Mensagens: Suporta RPC síncrono para requisição/resposta e eventos assíncronos com múltiplos modos de entrega: padrão (consumidores concorrentes), broadcast (todas as instâncias) e baseado em sessão (instância fixada).
- Gestão de Frota: Inclui um registro para heartbeats, rastreamento de exceções e sondas de saúde (GET /live/{service_name}), permitindo que os serviços sinalizem estados degradados.
- Ferramentas Operacionais: Integra correlação de fluxo via flow_id para depuração entre serviços e integra-se ao conjunto mais amplo do Kontiki, incluindo o kontiki-scheduler para tarefas cron declarativas, kontiki-tui para visualização da frota e kontiki-monitor para alertas.
- Fluxo de Desenvolvimento: Oferece um modelo unificado do desenvolvimento à produção usando configurações YAML mescladas e um módulo de teste dedicado (kontiki.testing) que simula o barramento de mensagens.
O framework requer o RabbitMQ como o broker de mensagens subjacente.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.