Dans le cadre de la SAE 3.02, l’objectif était de concevoir un système distribué où des clients peuvent soumettre des programmes à exécuter sur une infrastructure composée d’un serveur maître et de plusieurs serveurs secondaires. Ce type d’architecture permet une gestion optimisée des ressources et une meilleure répartition des tâches, garantissant un traitement efficace et scalable.
L’ensemble repose sur une communication via sockets et une interface graphique développée avec PyQt, offrant aux utilisateurs un accès simplifié aux fonctionnalités du système. Une attention particulière a été portée à la prise en charge de plusieurs langages de programmation (Java, Python, C, C++) afin d’assurer une flexibilité d’exécution. Bien que certaines améliorations comme la sécurisation des échanges et la sauvegarde des tâches en cas de panne n’aient pas été intégrées, le projet constitue une base solide pour un système évolutif et performant.
Vous pouvez retrouver le rendu complet de mon projet sur GitHub :
cliquez ici.
Vous y trouverez également une vidéo d'explication de la méthode de load balancing, ainsi qu'une documentation utilisateur et développeur.