Pular para o conteúdo principal
Página não listada
Esta página não está listada. Mecanismos de busca não irão indexá-la, e somente usuários que possuam o link direto poderão acessá-la

Configuração Essencial

O Kikwiflow expõe suas propriedades sob o prefixo kikwiflow.*. Este documento cobre apenas as que uma aplicação costuma precisar ajustar no dia a dia — para a referência completa de todas as propriedades e seus defaults, veja Referência de Configuração.

kikwiflow:
process-definition:
auto-deploy:
enabled: true # default: true
path: "classpath*:processes/**/*.kikwi" # default
security:
deploy-enabled: true # SEM isto, nenhum processo é implantado
execution:
task-acquisition-interval-millis: 1000 # intervalo do poller de tarefas assíncronas
task-acquisition-max-tasks: 12 # tarefas buscadas por ciclo de poller
max-concurrent-tasks: 200 # teto de tarefas assíncronas em execução simultânea
lock-timeout-millis: 1200 # por quanto tempo um worker "trava" uma tarefa que pegou
shutdown-grace-period-seconds: 30 # quanto esperar as tarefas em voo no shutdown
retry:
default-retry-interval: "PT1M" # intervalo padrão quando um nó não declara retryPolicy própria
pulse:
sse-endpoints:
enabled: true # habilita os endpoints Pulse (stats + stream SSE do Monitor)
interval: 5000 # intervalo de emissão do stream, em ms
PropriedadeQuando ajustar
process-definition.auto-deploy.enabled / .pathPara desabilitar o auto-deploy (deploy explícito via API/pipeline) ou organizar seus .kikwi em um caminho de classpath diferente do default. Ver Implantando Processos.
security.deploy-enabledPrecisa ser true para qualquer deploy acontecer — inclusive o auto-deploy do classpath. O default é false, de propósito.
execution.task-acquisition-interval-millisQuanto tempo, no pior caso, uma tarefa assíncrona (nó com commitBefore: true, um ramo de processamento paralelo) espera para ser retomada depois de pronta. Baixar reduz latência de continuação às custas de mais polling; é o valor que você calibra ao ajustar timeouts em testes de integração (ver Testando Seus Handlers).
execution.task-acquisition-max-tasks / max-concurrent-tasksO quanto o worker interno puxa por ciclo e o teto de execução simultânea — suba em cargas altas, baixe para limitar o consumo de recursos da aplicação.
retry.default-retry-intervalO intervalo padrão entre tentativas de retry quando uma tarefa não declara uma política própria (ver Retentativas).
pulse.sse-endpoints.enabled / .intervalHabilita os endpoints Pulse (snapshot de estatísticas + stream SSE) consumidos pelo Monitor e por qualquer dashboard seu.
Sobre kikwiflow.retry.fatal-exceptions

Existe também uma lista retry.fatal-exceptions (nomes de classe de exceção que, ao ocorrer, pulam diretamente para abertura de incidente em vez de seguir a política de retry normal) — relevante ao lidar com falhas que retry nunca vai resolver (ex.: IllegalArgumentException por dado malformado). O conta-service já traz java.lang.NullPointerException e java.lang.IllegalArgumentException nessa lista. Detalhes de todas as propriedades de retry estão na referência completa do motor.

Próximo passo

Isso conclui o Guia do Desenvolvedor até aqui. Os capítulos seguintes cobrem tipos de nó adicionais — correlação de eventos, cancelamento por correlação, espera por prazo no fluxo principal e subprocessos. Para entender como o motor implementa tudo isso por dentro (Navigator, ContinuationService, UnitOfWork, persistência transacional), veja Motor de Execução.