Composantes du middleware
I Client lourd
stocke les données et les applications localement. Le serveur stocke les fichiers mis à jour
Le client effectue une bonne partie du traitement
Le serveur est plus allégé
I Serveur lourd
Déploiement plus aisé I Client léger
On effectue plus de traitements sur le serveur :
Client à fonctionnalité minimale (terminaux X, périphérique réseau (Network Appliance), ordinateur réseau (network computer))
Beaucoup de charge sur le serveur et le réseau
I Mode synchrone
n’utilise pas de file d’attente
les messages sont émis aussitôt
I Mode asynchrone
utilise une file d’attente
mode non bloquant
favorise le multitâche (ex. FIFO, email)
I Les canaux
Services de communications entre composants et applications : RPC (synchrone), ORB (synchrone), MOM (Message Oriented Middleware) (asynchrone)
Services de support de communication : SSL, annuaires (LDAP)
I Les plate-formes
Serveurs d’applications qui s’exécutent du côté serveur
Offrent les canaux de communication
Assurent la répartition, l’équilibrage de charge, l’intégrité des transactions, etc
Exemple : architecture web-tier
I Transparence des réseaux : support de plusieurs types de réseaux (WAN, LAN, etc) et de protocoles (TCP/IP, SNA, etc)
I Transparence aux serveurs : support de plusieurs types de serveur (SGBD (Oracle, Sybase, SQL Server, etc))
I Transparence des données : traductions des formats de données (XDR, ASN.1, etc)
I Transparence de la localisation : utilisation d’un service de répertoire
Primitives de service :
I SendRequest()
I ReceiveResponse()
I ReceiveRequest()
I SendResponse()
I Trois grands types de message : REQ, REP et ACK I Autres types possibles : AYA (Are You Alive), BUSY (ordinateur temporairement occupé), ERR (Erreur), etc.