O maior portal de MU Online do Brasil — desde 2003
Tutorial Intermediário Infraestrutura

Como Monitorar CPU, RAM e Rede do Servidor de MU Online

Aprenda a monitorar consumo de CPU, memória RAM e tráfego de rede do seu servidor de MU Online para antecipar gargalos, evitar quedas e dimensionar o VPS corretamente.

BR Bruno · Atualizado em 13 jul 2026 · ⏱ 14 min de leitura
Resposta rápida

Um servidor de MU Online pode parecer saudável até o exato momento em que trava no meio de um Castle Siege lotado. A diferença entre um administrador que apaga incêndio e um que previne o problema está no monitoramento contínuo de três recursos: CPU, memória RAM e rede. Sem esses números, você opera

Um servidor de MU Online pode parecer saudável até o exato momento em que trava no meio de um Castle Siege lotado. A diferença entre um administrador que apaga incêndio e um que previne o problema está no monitoramento contínuo de três recursos: CPU, memória RAM e rede. Sem esses números, você opera no escuro — reinicia o servidor "por precaução", culpa o provedor por lag que na verdade é core saturado, ou paga por um VPS maior sem saber se o gargalo real é outro. Este tutorial mostra como observar cada recurso, entender o que é normal, guardar histórico e transformar dados em decisões: quando otimizar, quando reiniciar e quando realmente migrar de máquina. Todos os limites e valores citados são exemplo e variam por provedor/versão; o método de olhar é o que importa.

Pré-requisitos

  • Servidor de MU já em funcionamento (se ainda vai montar, comece pelo guia de como criar servidor de MU Online).
  • Acesso administrativo ao VPS: RDP no Windows Server ou SSH no Linux.
  • Permissão para instalar utilitários leves de monitoramento (opcional, mas recomendado para histórico).
  • Noção de quais processos correspondem ao seu servidor: GameServer, ConnectServer, JoinServer, o banco de dados (SQL Server/MySQL) e o site.
  • Um horário conhecido de pico (Castle Siege, invasão, evento) para comparar as métricas sob carga real.

Entenda os três recursos e como o MU os usa

Antes de coletar qualquer número, é preciso saber o que cada métrica significa no contexto de um MU, porque o jogo estressa cada recurso de um jeito diferente.

RecursoO que observarImpacto quando satura
CPUUso total e por núcleoLag na lógica do jogo, comandos lentos, hits que não registram
RAMMemória usada, livre e paginação (swap)Engasgos periódicos, quedas quando esgota
RedeBanda (upload/download) e perda de pacotesTeleporte, delay, desconexões mesmo com CPU/RAM ok

O ponto mais mal compreendido é a CPU. Muitas versões do GameServer são fortemente single-thread: um único núcleo faz o trabalho pesado da lógica do jogo. Isso significa que a CPU total pode marcar 25% enquanto um core específico está a 100% e virando gargalo. Por isso, olhar apenas a média geral engana — é preciso ver o uso por núcleo.

Passo 1 — Monitoramento ao vivo no Windows Server

A maioria dos servidores de MU roda em Windows Server. Comece pelas ferramentas nativas, que não custam nada e não pesam.

O Gerenciador de Tarefas (Ctrl+Shift+Esc) dá a visão imediata. Na aba Desempenho, clique com o botão direito no gráfico de CPU e escolha "Alterar gráfico para → Processadores lógicos" para ver cada núcleo separadamente — é assim que você flagra um core saturado.

O Monitor de Recursos (resmon) é o próximo nível: mostra qual processo consome CPU, RAM e rede em tempo real. Filtre pelo processo do GameServer e veja exatamente quanto ele puxa de cada recurso.

Para coletar rapidamente por linha de comando, o PowerShell resolve:

# uso de CPU por processo (top 5)
Get-Process | Sort-Object CPU -Descending |
    Select-Object -First 5 Name, CPU, @{N='RAM(MB)';E={[math]::Round($_.WS/1MB,1)}}

# memoria fisica livre no sistema
Get-CimInstance Win32_OperatingSystem |
    Select-Object @{N='LivreMB';E={[math]::Round($_.FreePhysicalMemory/1KB,0)}},
                  @{N='TotalMB';E={[math]::Round($_.TotalVisibleMemorySize/1KB,0)}}

Passo 2 — Histórico com o Monitor de Desempenho

Olhar o instante atual só ajuda quando o problema está acontecendo na sua frente. Para diagnosticar quedas que aconteceram de madrugada, você precisa de histórico. O Monitor de Desempenho do Windows (perfmon) grava isso em um Coletor de Dados.

  1. Abra perfmon e vá em Conjuntos de Coletores de Dados → Definido pelo Usuário.
  2. Crie um novo coletor manual, tipo "Contador de desempenho".
  3. Adicione os contadores essenciais:
  • Processador(_Total)\% Tempo de Processador e cada instância de núcleo
  • Memória\MBytes Disponíveis
  • Memória\Páginas/s (indica paginação — quanto mais alto, pior)
  • Interface de Rede(*)\Bytes Enviados/s e Bytes Recebidos/s
  1. Defina o intervalo de amostragem (exemplo: 30 segundos) e o local do log.
  2. Inicie o coletor e deixe rodando por dias.

Depois é só abrir o log gravado e comparar o comportamento nos horários de evento com os horários calmos. Assim, você descobre se aquela queda de terça foi CPU, RAM ou rede.

Passo 3 — Monitoramento em servidores Linux

Se o seu MU roda em Linux (comum em seasons modernas e emuladores mobile), o ferramental nativo é excelente. Para visão ao vivo, o htop mostra CPU por núcleo, RAM e swap num painel único e legível. Instale com o gerenciador da distro e rode:

htop

Para números pontuais em scripts, o vmstat e o free são diretos:

free -h            # RAM e swap em formato legivel
vmstat 1 5         # CPU, memoria e IO a cada 1s, 5 amostras

A coluna si/so do vmstat (swap-in/swap-out) é o sinal vermelho de que a RAM acabou e o sistema está usando disco como memória — é aí que o jogo engasga. Para rede, o iftop ou nload mostram a banda em tempo real por interface.

Passo 4 — Medir a rede e a perda de pacotes

Rede é o recurso mais negligenciado e a causa mais frequente de "lag misterioso" quando CPU e RAM estão tranquilas. Duas coisas importam: banda (você está enchendo o link?) e perda/latência (os pacotes chegam bem?).

Para banda, os contadores de rede já vistos bastam. Para latência e perda, teste da perspectiva de um jogador com um ping contínuo até o IP do servidor:

# 100 pacotes; observe o percentual de perda no resumo final
ping -n 100 SEU.IP.DO.SERVIDOR      # Windows
ping -c 100 SEU.IP.DO.SERVIDOR      # Linux

Perda de pacotes acima de zero de forma consistente já causa teleporte e delay no jogo. Se a perda aparece só em horário de pico, o gargalo é banda saturada; se aparece o tempo todo, pode ser problema de rota ou do próprio provedor. Ferramentas como mtr (Linux) ou pathping (Windows) mostram em qual salto da rota a perda começa.

Passo 5 — Coleta contínua com histórico e gráficos

Para servidores sérios, vale ter uma ferramenta leve que coleta as três métricas continuamente e desenha gráficos ao longo do tempo. O conceito é sempre o mesmo: um agente coleta CPU, RAM e rede em intervalos regulares e um painel guarda o histórico. Um script caseiro em PowerShell já dá um começo, gravando um CSV que você abre depois em qualquer planilha:

# coleta-metricas.ps1 — grava CPU, RAM livre e rede a cada 60s
$csv = "D:\Monitor\metricas.csv"
if (-not (Test-Path $csv)) {
    "DataHora,CPU_Pct,RAM_LivreMB,NetKBps" | Out-File $csv -Encoding UTF8
}

while ($true) {
    $cpu = (Get-CimInstance Win32_Processor | Measure-Object -Property LoadPercentage -Average).Average
    $ram = [math]::Round((Get-CimInstance Win32_OperatingSystem).FreePhysicalMemory/1KB,0)
    $net = (Get-Counter '\Interface de Rede(*)\Bytes Total/s' -EA SilentlyContinue).CounterSamples |
           Measure-Object -Property CookedValue -Sum | Select-Object -Expand Sum
    $netKB = [math]::Round($net/1KB,1)

    "$(Get-Date -Format 'yyyy-MM-dd HH:mm:ss'),$cpu,$ram,$netKB" | Out-File $csv -Append -Encoding UTF8
    Start-Sleep -Seconds 60
}

Agende esse script para iniciar com o servidor e você terá semanas de histórico ocupando poucos megabytes — o suficiente para enxergar tendências, como a RAM que cai um pouco a cada dia (vazamento de memória) ou o pico de rede que sempre coincide com uma invasão.

Passo 6 — Definir limiares e alertas

Monitorar sem alerta é só coletar dados que ninguém olha. Defina limiares para os três recursos e transforme-os em notificação. Valores de exemplo (ajuste à sua realidade):

MétricaAtenção (exemplo)Crítico (exemplo)
CPU por núcleoacima de 80% sustentado100% travado por minutos
RAM livreabaixo de 15%paginação (swap) ativa
Perda de pacotesqualquer perda constanteacima de 2% sustentado

Um alerta simples pode disparar um webhook para o Discord da equipe quando um limiar é cruzado. O importante é que o alerta chegue antes do jogador reclamar — monitoramento maduro é aquele em que você já sabe do problema quando abre o chat.

Passo 7 — Do dado à decisão

Coletar é meio do caminho; o valor vem da interpretação. Alguns padrões clássicos e o que fazer:

  • Um núcleo sempre a 100%, resto ocioso: gargalo de single-thread do GameServer. Otimize scripts/eventos pesados, reduza spawn excessivo ou considere separar subservers em processos diferentes.
  • RAM caindo continuamente até esgotar e o serviço reiniciar: provável vazamento de memória. Identifique o processo culpado no histórico e planeje reinício preventivo agendado até corrigir.
  • Rede saturada só no pico: banda insuficiente para a quantidade de jogadores; hora de conversar com o provedor ou dimensionar melhor.
  • Tudo tranquilo mas jogadores com lag: olhe perda de pacotes e latência — o problema é de rede/rota, não de recursos da máquina.

Erros comuns e soluções

Erro / SintomaCausa provávelSolução
"CPU está baixa mas o jogo lagga"Olhando só a média, com um núcleo saturadoVer uso por núcleo; tratar gargalo single-thread
Servidor cai de madrugada sem explicaçãoRAM esgotou e houve paginação/OOMAtivar histórico de RAM e páginas/s; achar o vazamento
Lag intermitente sem CPU/RAM altasPerda de pacotes na redeMedir com ping/mtr; falar com provedor se a perda for na rota
Métricas só existem quando o admin está onlineSem coleta contínua/históricoConfigurar coletor (perfmon/CSV) rodando 24h
A própria ferramenta de monitoramento pesaColeta em intervalo curto demais ou software pesadoAumentar intervalo (30-60s) e usar utilitários leves
Alertas nunca chegamLimiares não definidos ou notificação não configuradaDefinir limiares de exemplo e ligar webhook/e-mail

Checklist de lançamento

  • Uso de CPU visível por núcleo, não só a média
  • RAM livre e paginação (swap/páginas/s) sendo observadas
  • Banda de rede e perda de pacotes medidas sob pico real
  • Coletor de histórico rodando 24h (perfmon, CSV ou ferramenta leve)
  • Processos do MU identificados (GameServer, ConnectServer, banco, site)
  • Limiares de atenção e crítico definidos para os três recursos
  • Alerta automático (Discord/e-mail) disparando ao cruzar limiar
  • Comparação feita entre horário de evento e horário calmo
  • Decisão de otimizar/reiniciar/migrar baseada em dado, não em achismo

Com CPU, RAM e rede sob observação contínua, você deixa de reagir a quedas e passa a antecipá-las. O histórico transforma cada evento do servidor em aprendizado e cada decisão de infraestrutura — otimizar, reiniciar ou migrar — em algo baseado em números reais, não em palpite.

Perguntas frequentes

Qual uso de CPU é considerado normal em um servidor de MU?

Não existe número único, mas uma regra prática é manter a média abaixo de 70% com folga para picos. O GameServer do MU costuma ser single-thread em muitas versões, então um core saturado a 100% pode ser gargalo mesmo com a CPU total parecendo ociosa. Por isso é importante olhar o uso por núcleo, não só a média geral. Os valores são exemplo e variam por versão e quantidade de jogadores.

Quanta RAM meu servidor de MU precisa?

Depende da versão, do número de subservers e de jogadores online. Um servidor S6 pequeno pode rodar confortável com 4-8 GB, enquanto seasons modernas com muitos sistemas e mais players pedem 16 GB ou mais. O que realmente importa é monitorar: se a RAM livre encosta em zero e o sistema começa a usar disco como memória (paginação), a queda de desempenho é imediata.

Como sei se meu problema é CPU, RAM ou rede?

Correlacione. Se os jogadores relatam lag, olhe os três ao mesmo tempo no horário do problema. CPU saturada trava a lógica do jogo; RAM esgotada causa paginação e engasgos; rede saturada ou com perda de pacotes gera teleporte e delay mesmo com CPU e RAM tranquilas. Monitorar os três em conjunto é o que permite diagnóstico correto.

Preciso instalar programas pesados para monitorar?

Não. O Windows já traz Monitor de Desempenho e Monitor de Recursos, e o Linux tem ferramentas nativas como top, htop e vmstat. Para histórico e gráficos ao longo do tempo, ferramentas leves de coleta resolvem sem sobrecarregar o servidor. O importante é ter dados guardados, não só olhar o instante atual.

De quanto em quanto tempo devo coletar as métricas?

Para diagnóstico ao vivo, intervalos de 1 a 5 segundos mostram picos. Para histórico e capacidade, coletas a cada 30-60 segundos guardadas por semanas bastam e ocupam pouco espaço. O erro é só olhar quando já deu problema; o valor do monitoramento está em ter o histórico para comparar o antes e o depois de cada evento.

BR
Editor de eventos, mapas e itens

Bruno é especialista em eventos, mapas, bosses e economia de itens do MU Online. Documenta cada detalhe com base em jogo real.

Continue lendo

Artigos relacionados