« Pourquoi la latence de mon ShredStream Solana augmente-t-elle ? » Causes et solutions

À ERPC, nous recevons fréquemment des demandes de clients utilisant le flux de données en temps réel de Solana et signalant que « la latence de ShredStream augmente progressivement, puis que le flux finit par s’arrêter ».
Dans cet article, nous expliquerons clairement les principales raisons de ce problème et proposerons des solutions concrètes pour améliorer les performances de votre application.
Pourquoi la latence de ShredStream ne cesse-t-elle d’augmenter ?
Actuellement, ShredStream transmet presque toutes les données en temps réel sans filtrage. De ce fait, si les capacités de traitement du client sont insuffisantes, les données s'accumulent, augmentant progressivement la latence.
Les principales causes sont les suivantes :
1. Traitement avec Node.js ou dans un environnement monothread
À l’origine, le client ShredStream a été conçu en TypeScript avec le protocole gRPC. Cependant, comme les filtres ne sont pas encore implémentés, l'utilisation d'un environnement monothread comme Node.js atteint rapidement les limites de traitement, ce qui entraîne une augmentation continue de la latence.
Nous avons constaté que ce problème ne se produit pas lorsque nous utilisons un client Rust sur la même machine, ce qui confirme les limites du traitement monothread.
Solution : traitement multithread avec NAPI-RS
Nous avons donc développé une solution fondée sur NAPI-RS, qui exécute le traitement multithread en Rust tout en conservant le contrôle depuis TypeScript. Cette solution, connue sous le nom de Solana Stream SDK, est open source et accessible au public :
- GitHub : ValidatorsDAO/solana-stream
Si vous utilisez Node.js ou TypeScript, nous vous recommandons fortement d'utiliser ce SDK. Pour obtenir les meilleures performances, envisagez un langage natif multithread comme Rust.
2. Performances insuffisantes du serveur, notamment la fréquence du processeur
Les applications en temps réel utilisant Solana ShredStream fonctionnent généralement correctement sur un serveur avec 4 cœurs et 16 Go de RAM. Cependant, la fréquence du processeur est extrêmement importante. Des fréquences plus faibles peuvent entraîner une augmentation progressive de la latence.
Les serveurs optimisés avant tout pour la rentabilité utilisent souvent des processeurs d’ancienne génération ou dotés de nombreux cœurs, mais d’une faible fréquence. Par exemple, les processeurs AMD EPYC de quatrième génération avec de nombreux cœurs (comme les modèles à 84 cœurs) ont généralement une fréquence de base d'environ 2,2 GHz et n’exploitent souvent pas efficacement le mode turbo. Puisque l'exigence minimale recommandée pour les validateurs Solana est de 2,8 GHz, nous conseillons fortement aux clients d'adopter également des processeurs avec au moins cette fréquence.
En outre, les fournisseurs de VPS utilisent couramment le « surengagement », une pratique consistant à diviser un serveur physique en plusieurs serveurs virtuels. Dans un environnement surengagé, la concurrence pour les ressources avec les autres utilisateurs est fréquente pendant les périodes de pointe, ce qui a une incidence négative sur les performances.
Solution : utiliser un VPS doté d’un processeur récent à haute fréquence
ERPC fournit des serveurs VPS équipés des processeurs AMD EPYC de dernière génération avec des fréquences pouvant atteindre 4,15 GHz. Ces serveurs offrent des performances proches des solutions bare metal, parfaitement adaptées aux charges de travail de Solana nécessitant des flux de données en temps réel.
Auparavant, les solutions VPS à haute fréquence n'étaient pas disponibles, obligeant les utilisateurs ayant besoin de performances en temps réel à choisir des serveurs en bare metal. Les offres VPS d’ERPC résolvent cette limitation.
Nous recommandons notre EPYC VPS haute performance

Les solutions VPS d'ERPC sont optimisées pour le streaming de données en temps réel de Solana et très appréciées par de nombreux traders haute fréquence et de nombreux projets.
Ces solutions sont idéales pour les clients qui ont besoin de hautes performances sans mobiliser les ressources d’un serveur bare metal.
Nous vous encourageons à essayer nos solutions VPS.
Pour des essais gratuits ou des consultations détaillées, veuillez visiter le Discord officiel de Validators DAO :
- Discord officiel de Validators DAO : https://discord.gg/C7ZQSrCkYR
ERPC demeure déterminé à poursuivre la recherche et le développement afin de répondre à vos besoins en constante évolution et d’améliorer les performances.
Merci de votre soutien continu.


