Enoncé du projet :
On considère une application client serveur pour laquelle les processus clients et les processus
serveurs s’exécutent sur une même machine.
Cette application permet de réserver des places pour un ensemble de spectacles
Des processus clients remettent deux types de requêtes à destination du serveur de
réservation :
- requête de consultation permettent de consulter le nombre de places restantes pour
un spectacle donné.
- Requête de réservation permettant de réserver n places restantes pour un spectacle
donné
Le serveur de réservation est composé de deux processus :
- un processus serveur Consultation prend en compte les requêtes les requêtes de
consultation. Pour chacune d’elle, il renvoie le nombre de places disponibles pour
le spectacle spécifié dans la requête.
- Un processus serveur Réservation prend e compte les requêtes de réservation. Pour
chacune d’elle, il crée un processus un processus fils qui effectue la réservation si
cela est possible. Dans le cas où la réservation a pu être faite, le processus fils
renvoie au client un acquittement de réservation et sinon un message d’erreur.
Les informations concernant les spectacles sont stockées dans une tale en mémoire centrale.
Une entrée de la table concerne un spectacle et donne les informations suivantes : Intitulé du
spectacle, nombre de places restantes, date de la représentation. Chaque spectacle est joué une
seule fois.
Contraintes :
Les clients et les serveurs sont sur une même machine
Les processus fils du processus serveur Réservation recouvrent le code hérité du père par
un code exécutable contenant les actions de réservation.
Travail demandé :
- Choisissez les outils de communication qui vous paraissent les plus adaptés entre
les clients et les serveurs d’une part, d’autre part entre le processus réservation et
ses fils. Justifiez votre choix
- Détaillez la structure des messages échangés entre les processus.
Partager