Bonjour,
Je développe à l'heure actuelle un service d'enregistrement de données quelconques pouvant circuler dans un programme. L'enregistrement de ces données s'effectue en temps réel vers un serveur FTP disposant d'une connexion Ethernet Gigabits et censé pouvoir supporté du très haut débit (il faut pouvoir atteindre au moins 60Mo/s pour un flux).
Ainsi, côté logiciel, je pense qu'il est intéressant d'avoir pour un flux de données l'architecture suivante :
- 1 tâche qui récupère les données à enregistrer et les stocke dans un buffer tampon de taille à déterminer,
- 1 tâche qui lit le buffer tampon et écrit les données sur la socket FTP.
Cette architecture me paraît performante car du coup le deux tâches peuvent travailler à un rythme différent avec la première qui est généralement plus rapide que la deuxième. Et on peut régler la taille du buffer tampon en fonction des performances obtenues.
N'étant pas normalement un expert de ce type d'application, ma question du coup est de savoir quel type de buffer tampon serait le plus performant pour gérer une telle application ? Buffer circulaire sans protection d'accès ? Double buffer avec une protection d'accès ? ou autres ?
Merci,
Partager