Servidores de Jogos

Medindo o desempenho do servidor: CPU, RAM e ticks

Medindo o desempenho do servidor: CPU, RAM e ticks

Otimizar sem medir é chutar. Antes de reescrever sistemas ou trocar de plano, descubra onde está o gargalo.

Tick rate

O servidor processa o jogo em ciclos (ticks). Se o gamemode demora demais em algum ponto, o servidor faz menos ciclos por segundo e o jogo fica menos responsivo.

  • Use GetServerTickRate() para acompanhar a taxa de ticks;
  • Registre o valor periodicamente (por exemplo, a cada minuto) junto com o número de jogadores;
  • Quedas bruscas em horários específicos indicam algum sistema pesado rodando naquele momento.

Consulte a documentação da sua versão sobre a configuração de sleep e tick rate no config.json.

Tempo de funções

Meça o tempo de trechos suspeitos com GetTickCount():

new inicio = GetTickCount();
CarregarTodasAsCasas();
printf("[PERF] CarregarTodasAsCasas: %d ms", GetTickCount() - inicio);

Para funções chamadas com muita frequência, acumule o tempo total e o número de chamadas e imprima a média periodicamente.

Profilers

Existem ferramentas de profiling da comunidade para Pawn que mostram quanto tempo cada função consome. São muito úteis em gamemodes grandes. Verifique a compatibilidade com o open.mp e use no servidor de testes, pois o profiling também consome recursos.

CPU e memória

No painel de hospedagem:

  • CPU: observe os picos, não só a média. Picos coincidem com eventos, salvamentos e horários cheios;
  • Memória: deve estabilizar depois da inicialização. Se cresce sem parar, há vazamento (objetos, textdraws ou timers criados e nunca destruídos, dados em cache sem limite).

Banco de dados

  • Ative o log de consultas lentas do MySQL (se tiver acesso) ou registre consultas demoradas no callback do plugin;
  • Crie índices para as consultas mais frequentes.

Monte uma rotina

  1. Registre ticks, jogadores, CPU e memória;
  2. Compare antes e depois de cada mudança importante;
  3. Guarde o histórico para ver tendências.

Hospede seu servidor com a VittHost

Nos planos OPENMP-BR da VittHost, você acompanha CPU, memória e disco em tempo real no painel Pterodactyl. Servidores no Brasil, proteção DDoS, MySQL incluso, compatibilidade total com scripts SA-MP e teste grátis de 3 dias.

Compartilhar:

Pronto para hospedar seu próximo projeto?

VPS com painel pré-instalado em 1 clique. Ativação imediata.

Ver planos VPS