Bonjour,
Voila je vous expose mon problème, euh mon projet:
Nous devons développer un système de gestion de fichiers tolérant aux pannes.
Donc nous disposons de 4 serveurs en réseau, qui possèdent des fichiers. Un client peut se connecte à un serveur et peut soit telecharger un fichier, soit uploader un fichier.
Lorsqu'il uploade un fichier, celui-ci est récupéré en paquet(buffer de 512 octets) par le serveur et décide de l'envoyer en double exemplaire aux serveurs qu'il choisit en fonction de leur état de chargement.
Exemple:
Client -> Fichier F -> Serveur3
Serveur3 -> F1 -> Serveur2 et Serveur3, F2 -> Serveur4 et Serveur1,
F3-> Serveur 1 et Serveur4
Et lorsque le client veut télécharger le fichier F, Serveur3 se débrouille pour aller chercher les fichiers la où ils sont.
Je sais déjà comment gérer une application client/serveur multithread envoyer des fichier via sockets etc...
A priori, on aura besoin d'une SDD qui enregistre quels serveur ont quelles parties de quels fichiers(Arraylist, tableau a double entrée).
Aussi, si un serveur tombe en rade, tout les fichiers qu'il possédait se retrouve en 1 seul exemplaire, donc il faut redistribuer les fichiers sur les serveurs pour qu'il redevienne en double exemplaire.
Voilà en gros ce qu'il y a faire, un bon projet comme on les aime.
Merci pour vos indications.
Partager