Quando itens no chão, invocações e timers encerrados que deveriam sumir não são limpos e se acumulam, quanto mais tempo o servidor fica ligado, mais trabalho cada tick tem.
Por quê Itens no chão, invocações, timers expirados e dados de parties vazias não são removidos a tempo → Efeito A lista percorrida a cada tick fica mais longa a cada dia → Na tela Logo após a manutenção tudo vai bem, mas depois de alguns dias só aquele servidor ou área fica cada vez mais lento
Responsável principal Desenvolvimento do servidor (Equipe de desenvolvimento)
O que fazer (Equipe de desenvolvimento)
Registrar o número de entidades por área como métrica e acompanhar a tendência, definir tempo de vida e limite de quantidade para cada entidade, fazer limpezas periódicas.
Números de referência
Num servidor que percorre todas as entidades uma vez por tick, quando o número de entidades dobra, o tempo de tick dessa parte também dobra.
No gráfico
Dente de serra · Entidades por zona, tempo de tick do servidor
Onde olhar
Número de entidades (itens no chão, invocações, timers) e tempo de tick por zona e servidor, num período mais longo que o ciclo de manutenção (algumas semanas)
Confirma se
O número de entidades e o tempo de tick começam baixos após a manutenção, sobem a cada dia e despencam na manutenção ou no reinício, repetidamente, e a memória fica com folga o tempo todo
Descarta se
Tick estável, mas a memória não para de subir: aponta para vazamento de memória
Como verificar
Exige logs e métricas do servidor ou do cliente do jogo
Saiba mais
Como no vazamento de memória, piora quanto mais tempo o servidor fica ligado. A diferença é que a memória está com folga e só o tempo de tick aumenta. Se o gráfico do número de entidades tem formato de dente de serra a cada ciclo de manutenção, é este o caso.
Fontes
Actor Ticking in Unreal EngineEpic Games Atores e componentes rodam o tick uma vez por frame, a menos que se defina outro intervalo, e o tick pode ser desligado quando não é necessário
AActor::SetLifeSpanEpic Games Com um tempo de vida definido, o ator é destruído automaticamente quando ele expira