CESI: architectures n tiers
This commit is contained in:
@ -4,10 +4,10 @@
|
||||
|
||||
Implémenter en NodeJS une application distribuée permettant d'effectuer les opérations arithmétiques simples. Cette application devra répondre aux contraintes suivantes:
|
||||
|
||||
- Elle devra être suivre une architecture 2 tiers de classe 4.
|
||||
- Elle devra suivre une architecture 2 tiers de classe 4.
|
||||
- Le client devra utiliser le transport TCP/IP pour communiquer avec le serveur.
|
||||
- Elle n'aura pas à supporter de multiples clients.
|
||||
- Toutes les implémentations de la classe devront être compatibles, i.e. vous devez vous mettre d'accord sur un protocole de sérialisation/désérialisation des messages commun.
|
||||
- Toutes les implémentations de la classe devront être compatibles, i.e. vous devez vous mettre d'accord sur un protocole commun de sérialisation/désérialisation des messages.
|
||||
|
||||
Le client/serveur devront gérer les instructions suivantes:
|
||||
|
||||
@ -20,6 +20,15 @@ Le client/serveur devront gérer les instructions suivantes:
|
||||
|
||||
Vous pouvez vous baser sur les fichiers `client.js` et `server.js` présents dans ce répertoire pour amorcer votre projet.
|
||||
|
||||
Si vous débutez avec NodeJS, des liens sont disponibles plus bas dans la section "Ressources".
|
||||
|
||||
### Phases de l'exercice
|
||||
|
||||
- **Phase 1** Lisez bien les consignes.
|
||||
- **Phase 2** Concevez et mettez vous d'accord sur un protocole commun pour la sérialisation/desérialisation des instructions échangées entre le client et le serveur.
|
||||
- **Phase 3** Implémentez votre client et serveur en fonction des spécifications que vous aurez établi.
|
||||
- **Phase 4** Testez l'interopérabilité de vos implémentations en faisant pointer votre client vers le serveur d'un de vos collègues, et inversement.
|
||||
|
||||
## Exemple de séquence d'échange
|
||||
|
||||

|
||||
|
@ -0,0 +1,26 @@
|
||||
# Prototypage d'une application basée sur des microservices
|
||||
|
||||
## Consignes
|
||||
|
||||
Prototypez une application de micro-blogging (un clone de Twitter) en vous basant sur une architecture orientée microservices.
|
||||
|
||||
Votre application devra comprendre les fonctionnalités suivantes:
|
||||
|
||||
- Pouvoir créer un compte avec un identifiant unique et un mot de passe.
|
||||
- Se connecter avec son couple identifiant/mot de passe.
|
||||
- Poster un nouveau "statut" (une fois connecté).
|
||||
- Rechercher un utilisateur par son identifiant.
|
||||
- "Suivre" un autre utilisateur.
|
||||
- Visualisez le flux des statuts de tous les utilisateurs que l'on suit, par ordre chronologique décroissant.
|
||||
- Voir le profil d'un utilisateur et ses statuts.
|
||||
|
||||
### Exemples de vues
|
||||
|
||||

|
||||
|
||||
### Phases de l'exercice
|
||||
|
||||
- **Phase 1** En fonction des fonctionnalités identifiées, proposer un découpage de l'application en microservices, les canaux de communication entre ceux ci et la responsabilité de chacuns.
|
||||
- **Phase 2** Répartissez vous en groupes, un pour chaque microservice pressenti.
|
||||
- **Phase 3** Concevez l'API de chacun des microservices ensemble.
|
||||
- **Phase 4** Chaque groupe implémente le microservice qui lui est attribué et teste l'intégration de celui ci avec ceux des autres groupes.
|
Binary file not shown.
After Width: | Height: | Size: 34 KiB |
Binary file not shown.
After Width: | Height: | Size: 48 KiB |
Reference in New Issue
Block a user