Tabledesmatières
Avant-propos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XI
Chapitre1Problématiquedesapplications réparties.......................... 1
1.1Applications réparties.................................................. 1
1.1.1Communicationentreprogrammes...................................... 1
1.1.2Répartitionetparallélisme............................................. 2
1.1.3Leshuiterreurs conceptuellesdesapplications réparties..................... 3
1.2Concepts dapplications réparties........................................ 4
1.2.1Graindesapplications................................................ 4
1.2.2Couplage desapplications............................................. 4
1.2.3MOMetRPC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.4Modesynchrone etasynchrone......................................... 6
1.2.5 Sémantiquede communicationetqualitédeservice ........................ 7
1.3Impact surle génielogiciel.............................................. 7
1.3.1Modicationdelaconception.......................................... 7
1.3.2Modicationduprocessusdedéveloppement.............................. 8
Chapitre2Rappels sur Java................................................ 11
2.1Sérialisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.1 Sérialisationdun objet................................................ 11
2.1.2Graphesdobjets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1.3Personnalisationdelasérialisation...................................... 15
IVArchitecturesrépartiesenJava
2.1.4Gestiondesversions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2Utilisationdes threads:activitésenparallèle............................. 16
2.2.1Thread etprocessus. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.2 Simulationduparallélisme............................................. 17
2.2.3Créationdun thread . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.4Partage demémoire entrethreads....................................... 19
2.2.5UtilisationdeExecutorService etsémantiquedexécution................... 20
2.3Utilisationdesfuturs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3.1Programmationasynchrone............................................ 20
2.3.2 Synchronisationsurattentedurésultat.................................. 21
2.4Utilisationdelapuissance de calculdesmulti-processeurs avec les tâches
Fork-JoinenJava7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.5Designpatterns. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.5.1Patterndelafabrique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.2Patterndumandataire. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.5.3Proxiesdynamiques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.6PropriétésenJava. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.7Réexion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.7.1Classedun objet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.7.2Méthodesdune classe. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Chapitre3SocketsetJavaNIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1Communicationenréseau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.1Couchesbassesdusystème. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.1.2AdressesenIPv4, IPv6etinterfaces réseau.............................. 36
3.1.3TCPetUDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.1.4Portde communication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.1.5Téléchargerun fichierweb à partirduneURL............................ 38
3.2Communicationavec TCP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.1Mode clientserveur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2.2Codedunesocketserveuretdunesocketcliente.......................... 40
3.2.3Réceptiondelinformationparleserveur................................. 40
3.2.4UtilisationdeTCP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
TabledesmatièresV
3.3Utilisationdethreadsdansunserveur.................................... 41
3.3.1Connexiondeplusieurs clients......................................... 41
3.3.2Utilisationdethreadspourletraitementderequêtesenparallèle............. 42
3.3.3Limitationsdu nombredethreads : pooldethreads........................ 43
3.4Autres typesdesockets ................................................. 44
3.4.1 Socketsavec UDP................................................... 44
3.4.2Multicast. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.5UtilisationdeJavaNIO................................................ 48
3.5.1Unenouvellebibliothèque............................................. 48
3.5.2Canauxet tampons.................................................. 49
3.5.3 Socketsavec NIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Chapitre4Interfacesetpliage desarguments................................ 55
4.1Linterface,uncontratentre clientet serveur............................. 55
4.1.1Insufsance des sockets............................................... 55
4.1.2 Spécicationdesinterfaces............................................. 56
4.1.3Partagerdestypesdedonnéesentrelesapplications........................ 58
4.2Pliage desarguments (marshalling)...................................... 59
4.2.1Représentationdesdonnées............................................ 59
4.2.2Passage desargumentsparvaleuroupar référence......................... 60
4.3Interface,implémentationetdéploiement................................ 64
4.3.1Uneimplémentationpourplusieurs interfaces............................. 64
4.3.2Plusieurs implémentationsdelamêmeinterface ........................... 65
Chapitre5RMI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.1CommentutiliserRMI................................................. 67
5.1.1PositionnementdeRMI............................................... 67
5.1.2Définitiondesobjetsdistants........................................... 68
5.2Mise enœuvredeRMI................................................. 69
5.2.1Définitiondesinterfacesdistantes....................................... 69
5.2.2Implémentationdelinterface .......................................... 70
5.2.3Lanérationdelasouche............................................. 72
5.2.4Enregistrementdelobjetdanslannuaire etcodeserveur................... 73
5.2.5Appeldistantdepuisle client........................................... 74
1 / 20 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !