Otimizando o download de arquivos com servidor HTTP externo
Quando um jogador entra no servidor, ele baixa os scripts e arquivos de cliente de todos os resources. Por padrão, quem entrega esses arquivos é o servidor HTTP interno do próprio MTA. Em servidores com muitos mods e jogadores, isso pode ficar lento — e competir com o processamento do jogo.
A solução: httpdownloadurl
O MTA permite que os arquivos sejam entregues por um servidor web externo, especializado em servir arquivos, como o nginx:
<httpdownloadurl>https://downloads.seuservidor.com.br/mta</httpdownloadurl>
Com isso, o cliente do MTA baixa os arquivos dessa URL em vez da porta HTTP do servidor do jogo.
Vantagens
- Downloads mais rápidos: servidores web como o nginx são extremamente eficientes para servir arquivos estáticos;
- Menos carga no servidor do jogo, que fica livre para processar a partida;
- Suporte a muitos downloads simultâneos (ex.: após um reinício, quando todos entram de uma vez);
- Possibilidade de usar compressão e cache.
Como funciona
O servidor web precisa ter os mesmos arquivos de cliente dos resources, na estrutura que o MTA espera. Na prática:
- Os arquivos de cliente dos resources são disponibilizados no servidor web, organizados por resource;
- O
httpdownloadurlaponta para a raiz desses arquivos; - Sempre que um resource é atualizado, os arquivos no servidor web precisam ser atualizados também.
Se o arquivo não estiver disponível ou estiver diferente, o cliente acusa erro de download (verificação de checksum). Por isso, a sincronização entre o servidor do jogo e o servidor web é essencial — o ideal é que seja automática.
Consulte a wiki oficial do MTA ("Server Manual" / configuração de
httpdownloadurl) para os detalhes de estrutura de pastas da sua versão.
Dicas
- Use HTTPS;
- Configure cabeçalhos de cache adequados;
- Monitore erros 404 no servidor web (indicam arquivos desatualizados);
- Mesmo com servidor externo, otimize os mods — menos megabytes é sempre melhor.
Hospede seu servidor com a VittHost
O MTASA-BR da VittHost já vem com downloads acelerados por nginx dedicado, sem que você precise montar essa estrutura sozinho. Servidores no Brasil, painel Pterodactyl, proteção DDoS, MySQL incluso e teste grátis de 3 dias.