Vous êtes sur la page 1sur 1

Faculté des Sciences de Bizerte A.

U 2021/2022
Section GLSI3 22 septembre 2021

Développement d’applications réparties


Travaux pratiques N° 1 : Rappel sur les I/O en java

Exercice 1 Rappels du cours


1. Donner deux exemples d’applications C/S où le client a besoin de plus de ressources
que le serveur. Quel terme peut désigner ce genre de clients ?
2. Donner la définition et deux exemples de clients légers.
3. Rappeler la notion d’état d’un serveur. Donner deux exemples de serveurs avec et sans
état.
4. Quel est l’avantage du multithreading pour un serveur ?
5. Donner une définition et préciser l’utilité des RFC.

Exercice 2 Copie de fichier en java


1. Donner le code java d’un programme qui copie un fichier en un autre. Les noms des
deux fichiers sont sasis en ligne de commande. Vous pouvez utiliser les méthodes read
et write des classes FileInputStream et FileOutputStream. Les exceptions doivent
être correctement gérées et des messages d’erreurs adéquats doivent être affichés.
Exemple de commande : java Copie source.txt destination.txt
2. Mesurer le temps de la copie.
3. (Bonus +2) accélérer la copie en utilisant d’autres classes java.

Exercice 3 Communication basée sur le système de fichier


Pour faire communiquer deux processus donnés, nous allons utiliser le système de fi-
chiers comme espace partagé permettant d’échanger les données. Considérons une application
répartie constituée de deux processus, le premier (client) écrit un entier dans un fichier “re-
quetes.txt”, attend pendant une seconde, ensuite il lit et affiche la réponse qu’il va trouver
dans le fichier “reponses.txt”. Le second processus (serveur) ouvre périodiquement (toutes les
250 ms) le fichier des requêtes, s’il trouve un entier, il calcule sa factorielle et met la réponse
dans le fichier des réponses.
1. Donner un exemple de fichiers “requetes.txt” et “réponses.txt” possible.
2. Préciser le modèle client/serveur de cette application.
3. Ecrire les programmes Client.java et Serveur.java Correspondant aux client et au ser-
veur.
4. Noter les problèmes rencontrés, ils seront résolus dans ce cours !
5. Quels sont les avantages et inconvénients de cette méthode de communication ?

1/1 Khaled Barbaria

Vous aimerez peut-être aussi