Cet enseignement SI4 fait partie du module Applications Réparties. La partie I était dédiée aux technologies de programmation répartie par services telle les Services Web. Cette seconde partie présente des approches telle JavaRMI, plus intégrées où les services et les clients utilisant ces services doivent avoir été compilés pour une même plateforme d'exécution (ils ont besoin d'avoir une copie de certaines parties du code compilé). Comme pour les approches WebServices, des protocoles réseau (haut niveauà sophistiqués régissent la manière dont les différentes entités interagissent, offrant ainsi certaines garanties de nature non-fonctionnelle.
Lien vers l'enseignement de ce module il y a de cela quelques années
Cours 0: (optionnel, et qu'on peut même regarder en fin de module, pour simplement s'assurer qu'on a compris le positionnement) Introduction de cette partie II concernant les objets répartis
Cours 1: Programmation répartie en JavaRMI
Cours (à lire seul) sur la sémantique des modèles de programmation à objets distribués
Non traité depuis 2013: Protection par Programmation des applications Java : JAAS (Cours EPU 2009-2010).
Des ressources en ligne sur RMI:
Lien vers le tutorial RMI "officiel", Notes Techniques et OnLine Training (pas tout récent) et la spécification RMI
Un article assez intéressant sur le comportement interne de RMI
Seance 1 de TP: Une appli RMI simple: l'exemple le plus simple possible
Seance 2 de TP : Tout sur le passage de paramétres, et la migration de code
Seance 4 de TP (depuis 2013-2014) : L'utilisation de JNDI en RMI
Un ensemble de transparents utilisables en TP sur JNDI, un ancien cours (transparents 26- en particulier)
Seance 5 de TP (nouveau depuis 2013-2014) : L'utilisation de JMS pour des queues de messages
Seance 6 de TP (nouveau depuis 2013-2014) : L'utilisation de JMS pour du pub/sub
Comparaison des spécifications AMQP et JMS : ici
Livre très complet
sur les MOMs : en téléchargement gratuit.
Bientôt: Le sujet du mini projet, à rendre le 25 mai 2016 à 24h dernier délai
L'examen 2014 où les documents n'étaient pas autorisésL'examen 2013 où les documents étaient autorisés, et des éléments de correction.
L'examen 2012 et sa correction
L'examen 2011 et sa correction. ATTENTION la copie fournie en correction est fausse concernant l'exercice 4. Le serveur n'affiche que 3 messages, et le dernier message du client affiche SERVEUR et non "unknown". Voir ici pour les détails et le programme codé si vous voulez vous en convaincre par vous même.
Pour aller plus loin: en vue du cours SOA de 5ème année
Des brokers d'objets (ORB) aux bus à services Using Open Source Software for SOA
ou aussi Voir la première partie du talk
Un article sur les points ouverts (recherche) concernant le SOA
Un article decrivant l'usage d'un bus a services, ici, le bus PETALS