Rust est l'un des jeux de survie multijoueur les plus exigeants en termes de materiel serveur. La combinaison d'un vaste monde ouvert, de centaines de joueurs, de bases complexes, d'ennemis IA et de calculs physiques fait qu'un serveur Rust necessite plus de ressources que pratiquement tout autre serveur de jeu. Pourtant, de nombreux serveurs souffrent de lag inutile parce que leur configuration n'est pas optimisee. Dans ce guide, nous abordons tous les aspects de l'optimisation d'un serveur Rust : du materiel et des parametres serveur a la gestion des plugins et au choix de la carte.
Pourquoi Rust est-il si exigeant pour les serveurs ?
Pour comprendre comment ameliorer les performances, il est utile de savoir pourquoi Rust demande autant a un serveur :
- Un vaste monde procedural. Une carte Rust standard mesure 4000 x 4000 metres, avec des millions d'objets : arbres, rochers, animaux, batiments et plus encore. Tous ces objets sont geres par le serveur.
- Les bases des joueurs. Les joueurs Rust construisent des bases elaborees avec des centaines ou des milliers d'elements de construction. Chaque mur, porte, coffre et four est un objet distinct que le serveur doit traiter.
- Les entites IA. Les scientifiques aux monuments, les helicopteres, le Bradley APC et les animaux ont tous des routines IA qui consomment des cycles CPU.
- La degradation et l'entretien. Le serveur calcule en continu la degradation des batiments et verifie si l'armoire a outils contient suffisamment de ressources.
- Le netcode. Rust envoie constamment des mises a jour de position, des changements d'inventaire et des donnees d'environnement a tous les joueurs a portee. Avec plus de 100 joueurs sur un serveur, cela represente une enorme quantite de donnees.
En raison de ces facteurs, le choix du bon materiel et de la bonne configuration est crucial.
Materiel : de quoi un serveur Rust a-t-il besoin ?
Les exigences materielles dependent du nombre de joueurs et de la taille de la carte. Voici les recommandations pour 2026 :
| Profil serveur | RAM | CPU | Stockage |
|---|---|---|---|
| Solo/duo, 50 joueurs, carte 3000 | 8 Go | 4+ GHz monothread | 10 Go NVMe |
| Vanilla, 100 joueurs, carte 3500 | 10 a 12 Go | 4,5+ GHz monothread | 15 Go NVMe |
| Modde, 150 joueurs, carte 4000 | 12 a 16 Go | 4,5+ GHz monothread | 20 Go NVMe |
| Modde, 250+ joueurs, carte 4500 | 16 a 24 Go | 5+ GHz monothread | 30+ Go NVMe |
Le facteur critique est la performance monothread. La boucle de jeu de Rust tourne principalement sur un seul coeur. Un processeur avec une frequence d'horloge elevee par coeur, comme l'AMD Ryzen 9 7950X (jusqu'a 5,7 GHz en boost) utilise par HostValues dans son hebergement Rust, offre des performances nettement superieures a un processeur serveur avec beaucoup de coeurs mais des frequences plus basses.
Le stockage NVMe est egalement essentiel. Rust enregistre l'etat complet du jeu dans un fichier .sav qui peut atteindre des centaines de megaoctets sur les gros serveurs. La sauvegarde periodique (toutes les 5 minutes par defaut) peut provoquer un lag perceptible sur un disque lent. Les disques NVMe reduisent ce lag de sauvegarde a une fraction de ce que necessite un disque SATA.
Les variables serveur les plus importantes
Rust propose des dizaines de convars (variables de console) avec lesquelles vous pouvez influencer les performances du serveur. Voici les plus importantes :
server.tickrate
Le tickrate determine combien de fois par seconde le serveur met a jour l'etat du jeu. La valeur par defaut est 30. Beaucoup d'administrateurs pensent qu'un tickrate plus eleve (60 ou meme 128) ameliore les performances, mais c'est une idee fausse. Un tickrate plus eleve double la charge CPU sans que Rust en beneficie reellement. Le netcode et la physique de Rust sont concus pour 30 ticks par seconde. Gardez cette valeur a 30 sauf si vous avez un serveur tres puissant avec peu de joueurs.
gc.buffer
C'est l'un des parametres les plus impactants. Rust tourne sur Unity, qui utilise un ramasse-miettes (GC) pour liberer la memoire inutilisee. Par defaut, le GC libere regulierement la memoire, ce qui provoque de brefs pics de lag ("stutters"). Avec gc.buffer, vous pouvez definir combien de memoire le serveur peut mettre en tampon avant que le GC n'entre en action.
Parametres recommandes :
- Serveurs avec 8 a 12 Go de RAM :
gc.buffer 256 - Serveurs avec 12 a 16 Go de RAM :
gc.buffer 512 - Serveurs avec 16+ Go de RAM :
gc.buffer 1024ou plus
Une valeur gc.buffer plus elevee signifie que le GC s'execute moins souvent, ce qui reduit les stutters. L'inconvenient est que le serveur utilise plus de memoire. Assurez-vous d'avoir suffisamment de RAM disponible, car si le serveur depasse la memoire physique et passe au swap, les performances seront dramatiquement pires que n'importe quel stutter du GC.
server.saveinterval
Par defaut, Rust sauvegarde l'etat du jeu toutes les 600 secondes (10 minutes). Pendant la sauvegarde, le serveur peut brievement geler, surtout sur les gros serveurs. Vous pouvez augmenter cet intervalle a 900 ou 1200 secondes si le gel court est genant, mais gardez a l'esprit que vous perdrez plus de donnees en cas de crash. Un compromis est de garder l'intervalle a 600 et d'investir dans du stockage NVMe pour minimiser la duree de sauvegarde.
server.maxplayers
Reglez cette valeur sur le nombre de joueurs que votre materiel peut supporter, pas sur le nombre que vous esperez atteindre. Un serveur configure pour 300 joueurs mais avec le materiel pour 100 offre une mauvaise experience pour tout le monde. Commencez prudemment et augmentez le maximum au fur et a mesure que vous constatez que le serveur le supporte.
fps.limit
Limitez les FPS du serveur (images par seconde, dans le contexte serveur : ticks par seconde que le serveur tente d'atteindre). La valeur par defaut est 256, ce qui est inutilement eleve. Reglez cette valeur sur 60 ou meme 30 pour economiser des cycles CPU. Le serveur n'a pas besoin de tourner plus vite que ce que le tickrate impose.
Optimiser la taille et le seed de la carte
La taille de la carte a un impact direct sur les performances du serveur :
- Carte 3000 : compacte, adaptee a 50 a 75 joueurs. Moins d'objets, moins d'IA, sauvegardes plus rapides.
- Carte 3500 : le meilleur compromis pour la plupart des serveurs avec 75 a 150 joueurs.
- Carte 4000 : taille standard de Rust, adaptee a 150 a 250 joueurs avec un materiel suffisant.
- Carte 4500+ : uniquement pour les gros serveurs avec un materiel puissant. Le nombre d'objets croit de maniere exponentielle avec la taille de la carte.
Le seed (le numero de generation de la carte) influence egalement les performances. Certains seeds generent plus d'eau, moins de monuments ou une repartition defavorable des ressources. Utilisez un outil comme RustMaps.com pour previsualiser les seeds et choisir celui qui correspond a votre nombre de joueurs et votre concept de serveur.
Pour une petite communaute (serveur solo/duo avec 50 a 75 joueurs), une carte de 2500 a 3000 est ideale. Les combats sont plus frequents, les temps de trajet plus courts et le serveur tourne plus fluidement.
Optimiser les plugins Oxide/uMod
La plupart des serveurs Rust moddes utilisent Oxide (desormais connu sous le nom d'uMod), un framework permettant des plugins en C#. Les plugins ajoutent des fonctionnalites, mais des plugins mal ecrits ou trop nombreux sont la principale cause de lag sur les serveurs moddes.
Conseils pour l'optimisation des plugins :
- Moins c'est mieux. Chaque plugin que vous ajoutez execute du code sur le serveur. Evaluez regulierement si vous avez reellement besoin de chaque plugin. Un serveur avec 30 plugins bien choisis fonctionne mieux qu'un serveur avec 80 dont la moitie est superflue.
- Utilisez le profiler de performance d'Oxide. La commande
oxide.profiler start(puis apres une minuteoxide.profiler stop) montre quels plugins consomment le plus de temps CPU. Supprimez ou remplacez les plus lourds. - Evitez les plugins qui utilisent beaucoup de hooks OnTick. Les plugins qui executent du code a chaque tick (30 fois par seconde) sont exponentiellement plus lourds que les plugins bases sur des evenements. Verifiez le code source ou la documentation de vos plugins.
- Choisissez des variantes optimisees. Les plugins populaires ont parfois plusieurs versions. Choisissez toujours la variante specifiquement optimisee pour les performances.
- Limitez les requetes de sauvegarde. Les plugins qui ecrivent beaucoup de donnees sur le disque (classements, statistiques, logs) provoquent du lag I/O. Reglez leur intervalle de sauvegarde aussi haut que possible.
Reduire le nombre d'entites
Le nombre total d'entites (objets) sur le serveur est l'un des indicateurs de performance les plus importants. Vous pouvez consulter le nombre actuel avec la commande serveur ent kill (attention : cette commande affiche le nombre, ne l'utilisez pas accidentellement pour supprimer des entites). Ou utilisez global.entity_count.
Moyens de controler le nombre d'entites :
- Accelerer la degradation. Definissez
server.pve false(par defaut) et ajustez eventuellementdecay.scalepour faire degrader plus rapidement les bases abandonnees. Les bases abandonnees sont une source majeure d'entites. - Limiter la taille maximale de construction. Des plugins comme "Building Grade Limiter" ou "Entity Limit" limitent le nombre d'elements de construction par joueur ou par armoire a outils.
- Wipes reguliers. La plupart des serveurs Rust wipent mensuellement (map wipe) ou hebdomadairement (serveurs moddes). Apres un wipe, le nombre d'entites repart a zero, ce qui ameliore immediatement les performances.
- Supprimer les entites inutilisees. Sacs de couchage vides, caches abandonnes et objets tombes au sol que personne ne ramasse : ils comptent tous. Des plugins comme "Stash Remover" ou le systeme de degradation standard aident a cela.
Optimiser le reseau
Les performances reseau sont au moins aussi importantes que les performances serveur. Les joueurs ressentent du lag quand le reseau est lent ou instable, peu importe la vitesse de calcul de votre serveur.
- Emplacement du serveur. Choisissez un emplacement proche de votre public cible. Pour une communaute francophone en Europe, un serveur aux Pays-Bas est ideal. HostValues propose plusieurs emplacements europeens pour que vous choisissiez le ping le plus bas.
- Protection DDoS. Les serveurs Rust populaires sont une cible frequente d'attaques DDoS, souvent par des joueurs frustres ou des serveurs concurrents. La protection DDoS professionnelle, incluse en standard chez HostValues Rust hosting, filtre les attaques avant qu'elles n'atteignent votre serveur.
- server.netcachesize. Ce parametre determine la taille du cache reseau. Une valeur plus elevee peut aider pour les serveurs avec beaucoup de joueurs, mais coute plus de memoire. La valeur par defaut est 16 ; pour les serveurs avec 100+ joueurs, vous pouvez essayer 32 ou 64.
Optimisation du jour de wipe
Les premieres heures apres un wipe sont les plus lourdes pour un serveur Rust. Tous les joueurs se connectent en meme temps, la carte genere le terrain et les structures, et le nombre d'entites augmente de maniere explosive. Conseils pour un jour de wipe fluide :
- Generez la carte a l'avance. Utilisez la commande
server.seed [seed] server.worldsize [taille]et demarrez le serveur une fois sans joueurs pour laisser la carte se generer. Lors du wipe reel, le serveur charge la carte pregeneree, ce qui est plus rapide. - Limitez temporairement le nombre de joueurs. Reduisez maxplayers pendant les 30 a 60 premieres minutes pour ne pas surcharger le serveur durant la phase d'initialisation.
- Surveillez activement le serveur. Gardez un oeil sur les FPS serveur et le nombre d'entites via RCON ou un panneau web. Si les FPS descendent en dessous de 15, il y a un probleme qui necessite une attention immediate.
- Redemarrez apres le rush initial. Un redemarrage apres 2 a 4 heures libere la memoire et donne au ramasse-miettes une ardoise propre.
RCON et surveillance
Un serveur bien surveille est un serveur stable. Utilisez RCON (Remote Console) pour gerer et surveiller votre serveur a distance :
- RustAdmin : un client RCON gratuit populaire pour Windows avec une interface graphique.
- BattleMetrics : une solution RCON basee sur le web avec des statistiques de joueurs, une gestion des bans et des graphiques de performance.
- Surveiller les FPS serveur. La commande
perfdans la console serveur affiche les FPS actuels du serveur. Un 30 stable est l'objectif. En dessous de 20, les joueurs ressentent du lag ; en dessous de 10, le serveur est pratiquement injouable. - Suivre le nombre d'entites. Surveillez
global.entity_counttout au long du cycle de wipe. Si le nombre depasse 200 000 a 300 000 sur un serveur moyen, attendez-vous a des problemes de performance.
Erreurs courantes
Voici les erreurs que nous voyons regulierement chez les administrateurs de serveurs Rust :
- Carte trop grande pour trop peu de joueurs. Une carte de 4500 pour 50 joueurs est vide et gaspille des ressources. Choisissez une taille de carte adaptee a votre communaute.
- Augmenter le tickrate a 60 ou 128. Cela n'aide pas et aggrave la situation. Rust est concu pour 30 ticks.
- Ne pas surveiller la memoire. Si votre serveur passe au swap, les performances sont catastrophiques. Surveillez l'utilisation de la memoire et mettez a niveau votre RAM avant d'en arriver la.
- Ne pas configurer le GC buffer. Le gc.buffer par defaut est 0, ce qui provoque des stutters frequents et perceptibles. Configurez-le toujours.
- Copier tous les plugins d'un autre serveur. Chaque serveur a un contexte et un nombre de joueurs different. Ce qui fonctionne sur un serveur de 300 joueurs avec du materiel dedie peut completement faire tomber un serveur de 100 joueurs sur un hebergement partage.
Checklist : optimisation de serveur Rust
Utilisez cette checklist pour optimiser votre serveur etape par etape :
- Verifiez que votre materiel est adequat : la performance monothread est reine. AMD Ryzen 9 7950X ou equivalent.
- Utilisez du stockage NVMe pour des sauvegardes rapides.
- Configurez gc.buffer en fonction de votre RAM disponible (256 a 1024+).
- Gardez server.tickrate a 30.
- Reglez fps.limit sur 60.
- Choisissez une taille de carte adaptee a votre nombre de joueurs.
- Utilisez le profiler Oxide pour identifier les plugins lourds.
- Surveillez le nombre d'entites et les FPS serveur quotidiennement.
- Planifiez des wipes reguliers pour reinitialiser le nombre d'entites.
- Assurez-vous d'avoir une protection DDoS et un emplacement serveur proche de vos joueurs.
Questions frequentes
De combien de RAM un serveur Rust a-t-il besoin au minimum ?
Pour un petit serveur avec 50 joueurs et une carte de 3000, 8 Go est le minimum absolu, mais 10 Go est plus confortable. Pour 100+ joueurs, 12 a 16 Go sont recommandes. Les serveurs moddes avec beaucoup de plugins necessitent toujours plus que les serveurs vanilla avec le meme nombre de joueurs. Tenez aussi compte de gc.buffer : ce parametre reserve de la memoire supplementaire pour le ramasse-miettes. Si vous reglez gc.buffer sur 512, ajoutez cela a votre besoin de base.
Pourquoi mon serveur Rust a-t-il du lag apres quelques jours ?
La cause la plus frequente est un nombre d'entites croissant. Au fur et a mesure que les joueurs construisent, laissent tomber des objets et etendent leurs bases, le nombre d'objets que le serveur doit gerer augmente. Les bases abandonnees qui ne se degradent pas assez vite aggravent le probleme. Verifiez votre nombre d'entites avec global.entity_count. Si le nombre depasse 200 000, envisagez une degradation acceleree des bases abandonnees ou un wipe anticipe. Une autre cause est l'utilisation de la memoire : si le serveur reclame progressivement plus de memoire et finit par passer au swap, tout ralentit. Surveillez votre utilisation de RAM et redemarrez le serveur chaque semaine a titre preventif.
Dois-je utiliser un serveur dedie ou un VPS pour Rust ?
Pour les petits serveurs (jusqu'a 50 joueurs), un bon VPS suffit, a condition qu'il offre un stockage NVMe, un processeur rapide et suffisamment de RAM. Chez HostValues, les VPS tournent sur du materiel AMD Ryzen 9 7950X, ce qui offre la meme qualite de processeur que les machines dediees. Pour les gros serveurs avec 100+ joueurs, un serveur dedie ou un VPS avec suffisamment de ressources allouees est necessaire. L'avantage d'un VPS est la flexibilite : vous pouvez facilement monter en puissance au fur et a mesure que votre communaute grandit, sans devoir migrer vers un autre materiel. Pour la plupart des serveurs Rust, un forfait d'hebergement Rust ou un VPS puissant de HostValues est le meilleur choix.
Resume
L'optimisation d'un serveur Rust repose sur trois piliers : le bon materiel, des parametres serveur judicieux et une utilisation controlee des plugins. Investissez dans un processeur avec de hautes performances monothread et du stockage NVMe, configurez gc.buffer, surveillez le nombre d'entites et evaluez regulierement vos plugins. Surveillez activement votre serveur et n'ayez pas peur de commencer prudemment avec le nombre maximum de joueurs.
Vous cherchez un serveur Rust avec le bon materiel ? Chez HostValues, tous les serveurs Rust tournent sur des processeurs AMD Ryzen 9 7950X avec stockage NVMe et protection DDoS. Consultez egalement le calculateur de RAM pour determiner la quantite de memoire dont votre serveur a besoin. Tous les forfaits sont resiliables mensuellement.