Diagnosticando o atraso do servidor Minecraft e o baixo TPS

Como o Minecraft funciona (O que causa o atraso?)

A chave para entender o que está causando o atraso é entender como o Minecraft funciona. Todos os softwares de servidor Minecraft operam de maneira semelhante com um problema-chave: não há limites de multiencadeamento ou tempo para o loop principal do jogo. Quando o servidor entra em jogo, ele executa todas as atualizações TileEntity, atualização de entidade, atualização de bloco, eventos e outros processos até que seja concluído. Isso tudo ocorre em um thread e o próximo loop não pode ser iniciado até que o atual seja concluído. O mundo não será atualizado, os jogadores não parecerão se mover e as entidades serão congeladas. Idealmente, cada tique não deve demorar mais de 50 ms para manter 20 Tiques por segundo (TPS). Isso pode chegar a 55,55ms para 18 TPS com problemas mínimos. Qualquer menor que isso e você começará a ver lag.

Causas típicas do atraso

Há muitas coisas que podem causar atraso, mas algumas delas serão as culpadas mais prováveis ​​para a maioria dos servidores.

  • Uso de arquivo : qualquer plug-in que esteja constantemente lendo dos arquivos do player, especialmente em eventos como movimento, dano ou interação. Alguns exemplos seriam alguns sinalizadores de PVP ou plugins Glow que lerão continuamente os arquivos do player.
  • Arquivos simples como banco de dados : quando você possui plug-ins que usam arquivos grandes para rastrear muitos dados que iteram por esse arquivo ou na memória, dependendo de como eles são armazenados, leva muito tempo. Muitos plug-ins fazem isso e não tomam precauções contra como, quando os bancos de dados ficarem inchados, o tempo de processamento afetará o tique dos servidores. Você verá isso muito ao carregar grandes configurações do MagicSpells ou ao usar sistemas de permissões que usam YAML em vez de um banco de dados adequado, como PEX e GroupManager.
  • Muitas operações : quando um plug-in gera muitas entidades ou tenta executar tarefas complexas em eventos como movimento, você começará a ver lag. Mesmo se cada execução demorar menos de 1 ms, quando você estiver processando um evento 20k vezes por segundo, ele se tornará exponencial. Os plugins que podem causar isso são plugins de edição mundial, como o VoxelSniper e o WorldEdit; ou plugins de proteção, como Anti Cheats e World Protections.
  • Muitos pedaços carregados : um pedaço é 16*16*256. Isso pode não parecer muito, mas, quando multiplicado, significa que existem 65.536 blocos por bloco. Cada jogador pode ter mais de 200 pedaços carregados, dependendo da sua configuração. São mais de 13.107.200 blocos. Isso consome muita memória. Além disso, se 1% deles são TileEntities, 131.072 TileEntities carregados precisam atualizar todos os tiques. Os mods são notórios por terem tempos de processamento lentos em TileEntities.
  • WorldGen em cascata : é quando um plugin ou mod gera estruturas fora do bloco que é fornecido. Isso faz com que o próximo pedaço seja carregado, gere e, em seguida, o desencadeie novamente, se também começar a ter estruturas transbordando para o próximo pedaço. Esse design é ruim em nome dos criadores e qualquer plug-in ou mod fazendo isso deve ser removido imediatamente.
  • Entidades de bloco : consulte a seção LagGoggles abaixo.

Encontrar a causa do atraso geralmente é um procedimento simples hoje em dia, já que a maioria dos softwares para servidores Minecraft é construída com ferramentas de criação de perfil incluídas.

Relatórios de tempos para Spigot / PaperSpigot

Para obter um relatório detalhado de horários, você pode usar o comando follow.

/timings on

Você vai querer esperar alguns minutos e esperar enquanto seus horários estão em execução. Depois de um tempo, gere o relatório.

/timings paste

Isso fornecerá um link para um site com uma boa descrição do relatório, com opções fáceis para filtrar todos os dados que você está recebendo. Você pode aprender mais sobre como lê-los no wiki de tempo do Spigot .

Você deseja desativar os horários depois, pois não deseja que os dados indesejados obstruam sua próxima leitura, e os horários adicionam mais tempo ao jogo.

/timings off

Relatórios de temporização para esponja

Para obter um relatório detalhado de horários, você pode usar o comando follow.

/sponge timings on

Você vai querer esperar alguns minutos e esperar enquanto seus horários estão em execução. Depois de um tempo, gere o relatório.

/sponge timings report

Isso fornecerá um link para um site com uma boa descrição do relatório, com opções fáceis para filtrar todos os dados que você está recebendo. Como o sistema de temporização do Sponge é baseado no Spigot, você pode aprender mais sobre como lê-los no wiki de temporização do Spigot .

Você deseja desativar os horários depois, pois não deseja que os dados indesejados obstruam sua próxima leitura, e os horários adicionam mais tempo ao jogo.

/sponge timings off

Você também pode redefinir os tempos.

/sponge timings reset

Etapas para reduzir o atraso

  • Use argumentos adequados para o seu arquivo de script para iniciar o Minecraft. Saiba mais sobre os argumentos Java apropriados aqui
  • Use LuckPerms ou um gerenciador de permissões que use um banco de dados adequado em vez de um arquivo simples
  • Evite completamente carregadores de chunk
  • Remova qualquer coisa que cause a geração mundial em cascata
  • Limite os plugins Anti Cheat para não serem excessivamente zelosos
  • Limite a distância de visualização dos jogadores em server.properties
  • Limpar multidões hostis após um período de tempo definido
  • Reinicie o servidor diariamente para limpar vazamentos do Java
  • NUNCA recarregue o servidor, isso causa vazamentos e outros problemas
  • Use versões do FastAsync de plugins, como WorldEdit e VoxelSniper
  • Limite o tamanho do seu mundo para que novos pedaços não sejam constantemente criados
  • Limite a quantidade de plugins que você usa. Nem todos os plugins são construídos bem e quanto mais você tem, mais problemas você encontrará

LagGoggles

Uma grande parte do atraso em servidores modificados vem de entidades de bloco. Essas são as entidades criadas para os blocos usados ​​para processar a funcionalidade e os eventos do bloco. Se demorarem demais ou houverem muitos, poderá aumentar o tempo de tique, diminuindo o TPS total do servidor. Uma maneira de visualizar esses problemas é usar um mod chamado LagGoggles. Você pode baixar este mod no CurseForce .

Deixar um comentário

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.