Registro persistente de trabalho
O log append-only registra as operações da fila. Essa base participa da recuperação após interrupções e da reconstrução do estado necessário para continuar o processamento.
Nossa tecnologia de mensageria e orquestração para conectar processos, eventos e automações.
Converse sobre Skama ↗A aplicação registra o trabalho
Persistência e concessão de execução
Consumidor executa e confirma
O Skama é a tecnologia de filas de trabalho da Era Logic. Seu papel é organizar tarefas que precisam ser processadas por consumidores, com registro persistente e controle do ciclo entre publicação, execução e confirmação.
Uma tarefa em segundo plano não tem o mesmo comportamento de uma atualização enviada a uma tela. Ela precisa ser assumida por um consumidor, executada e confirmada. Se houver uma interrupção, o sistema precisa saber o que ocorreu com o trabalho e como ele volta a ser tratado.
A arquitetura do Skama utiliza um log append-only para persistência, concessões temporárias de trabalho e tokens de confirmação. O núcleo atual prioriza a operação em nó único; a evolução distribuída é tratada como uma etapa própria do projeto.
Conheça os componentes e a responsabilidade de cada camada na arquitetura de Skama.
O log append-only registra as operações da fila. Essa base participa da recuperação após interrupções e da reconstrução do estado necessário para continuar o processamento.
O consumidor assume um trabalho por meio de uma lease. A tarefa permanece associada a essa concessão durante a execução e precisa ser confirmada de acordo com o protocolo.
Fencing tokens identificam a concessão válida. Eles permitem recusar confirmações de uma execução antiga quando o trabalho já passou para uma nova tentativa de processamento.
Filas com prioridade, controle de crédito dos consumidores, métricas e dead letter queue compõem os recursos do projeto. Eles ajudam a organizar o consumo e a investigar trabalhos que não seguiram o fluxo esperado.
Estes cenários ajudam a entender o papel do produto. O desenho de uma solução começa pelos requisitos de cada projeto.
Trabalhos que podem sair do caminho imediato de uma requisição, como geração de um arquivo ou transformação de dados. A aplicação publica a tarefa e o consumidor executa a atividade.
Organizar etapas de trabalho que dependem de outros serviços. O consumidor deve tratar idempotência e os efeitos externos da execução, especialmente quando uma tentativa pode ser repetida.
Separar a criação de uma demanda de seu processamento. A fila oferece um lugar para acompanhar o trabalho pendente, o consumo e as confirmações.
Um produto tem recursos próprios. Uma solução precisa conectar esses recursos ao ambiente, às pessoas e à rotina de operação.
Definir o conteúdo da tarefa, suas prioridades e o significado de uma execução concluída.
Implementar o processamento, a confirmação e a proteção contra efeitos duplicados.
Observar consumo, falhas e trabalhos que precisam de investigação ou de outro tratamento.
Esse cenário deve ser considerado. Interrupções entre executar e confirmar podem exigir nova tentativa. A aplicação e o consumidor precisam tratar idempotência para proteger os efeitos externos.
Não. O Skama organiza trabalho a executar. O Lig distribui atualizações em tempo real para participantes conectados. Uma tarefa pode ser processada no Skama e sua mudança de estado comunicada por uma camada de realtime.
O núcleo atual prioriza a execução em nó único. A evolução de clustering está em desenvolvimento e não deve ser confundida com a operação já disponível.
Além da velocidade, é necessário observar persistência, retomada após falhas, limites de consumo, confirmação e comportamento dos efeitos externos quando uma tarefa é repetida.
Apresente a aplicação, a arquitetura atual e o que você precisa resolver. Nossa equipe conversa sobre a adequação do Skama ao seu contexto.
Fale com a Era Logic ↗Todas as tecnologias