Um servidor Minecraft que parece lento quase nunca está com pouca memória. O problema é que ele não consegue completar um tick em 50 ms, e as causas são entidades, carregamento de chunks, distância de visão e software do servidor, mais ou menos nessa ordem. Corrija esses pontos e um servidor de 4 GB terá desempenho melhor que um mal ajustado de 12 GB.
A métrica que importa é TPS, não o uso de RAM. Vinte ticks por segundo é a velocidade máxima. Qualquer valor abaixo disso indica que o servidor está ficando sem tempo, não sem espaço.
Trabalhe nessa ordem
1. Distância de visão. Cada jogador mantém um quadrado de chunks carregados ao seu redor. Diminuir a distância de visão de 10 para 6 reduz essa área em cerca de dois terços e geralmente é a maior melhoria possível. A distância de simulação pode ser ainda menor, porque a maioria dos jogadores não percebe a diferença entre mobs parados a 6 chunks ou a 10.
2. Entidades. Fazendas de mobs, itens largados, carrinhos e suportes de armadura são processados a cada tick. Alguns milhares de itens largados funcionam exatamente como um ataque de negação de serviço que você mesmo criou. Limite o spawn de mobs, limpe os itens em um timer e verifique bem qualquer fazenda funcionando enquanto ninguém está por perto.
3. Redstone e funis. Funis coletam dados constantemente, independentemente de algo estar passando por eles. Uma parede de funis é cara de um jeito que parece não custar nada.
4. Carregamento de chunks. Qualquer coisa que mantém chunks carregados longe dos jogadores consome orçamento de tick para sempre. Carregadores de chunk e sistemas baseados em portais valem uma auditoria antes de comprar um plano maior.
5. Software do servidor. O Paper faz o mesmo trabalho consumindo menos recursos que o vanilla, e essa diferença não é pequena. Forge e Fabric adicionam trabalho dos mods por cima, o que é custo dos mods e não um defeito.
A questão da memória, respondida corretamente
A memória vira gargalo em exatamente duas situações, e ambas são reconhecíveis:
java.lang.OutOfMemoryErrorno log. Sem dúvida. Compre mais.- Uso de memória em padrão serra com pausas periódicas. Pausas na coleta de lixo. Isso é problema de ajuste antes de ser necessidade de compra.
Todo o resto que parece lag é o loop de ticks. Quanto RAM um servidor Minecraft precisa cobre dimensionamento e flags do JVM em detalhes, incluindo por que -Xms e -Xmx devem ser iguais e por que alocar todo o plano para o heap pode causar problemas.
Servidores modded são um bicho diferente
Mods carregam na inicialização e ficam ativos. Isso tem duas consequências que as pessoas descobrem do jeito difícil:
- O uso em ociosidade está alto e isso é normal. Um modpack que ocupa 6 GB com ninguém online não está com problemas.
- O custo de tick é por mod e acumulativo. Máquinas, carregadores de chunks e mods de geração de mundo adicionam trabalho a cada tick, e eles fazem isso independentemente de o jogador que os construiu estar online ou não.
Adicione mods em lotes para que uma queda de desempenho aponte para algo específico. Essa é a mesma disciplina que mantém servidores de Garry's Mod e Factorio saudáveis, e o mesmo erro prejudica todos os três.
O que fazer antes de comprar um plano maior
- Defina distância de visão para 6 e distância de simulação para 4. Meça.
- Limpe itens largados e limite spawns de mobs. Meça.
- Mude para Paper se não estiver usando e se não for modded. Meça.
- Só então veja o plano.
Nossa hospedagem de servidores Minecraft expõe distância de visão, software do servidor e flags do JVM no painel, então cada uma dessas é um reinício em vez de um chamado ao suporte.
Quando o problema é realmente nosso, e não seu
Se o TPS está bom, mas tudo parece atrasado, isso é latência e não carga do servidor, e nenhum ajuste corrige a distância. Nossos servidores ficam em Frankfurt, portanto essa distância é um dado do seu grupo e não uma configuração. Se isso já for verdade e ainda parecer errado, vale a pena abrir um ticket em vez de alterar outra configuração.

por 


