La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Serveurs dapplication 1.Architecture 2.Le standard J2EE 3.Etude de cas: EDF GDF 4..NET de Microsoft.

Présentations similaires


Présentation au sujet: "Serveurs dapplication 1.Architecture 2.Le standard J2EE 3.Etude de cas: EDF GDF 4..NET de Microsoft."— Transcription de la présentation:

1 Serveurs dapplication 1.Architecture 2.Le standard J2EE 3.Etude de cas: EDF GDF 4..NET de Microsoft

2 2 1. Architecture avec SA SGBD Application ERP Browser Web Appareil mobile Client Java Client VB/C++ Serveur Web Serveur WAP Parefeu … Application mainframe Serveur dapplication Présentation Application Données … Serveur Web

3 3 Serveur dapplication Serveur dentreprise avec support des composants standards CORBA, COM, EJB middleware objet support des transactions standards CORBA, Open Group (XA) environnement de développement intégré composants, transactions équilibrage de charge entre serveurs support de XML et des Web services interface avec moniteurs transactionnels et MOM NB: serveur dapplication serveur Web + servlet (ex. Apache+Tomcat)

4 4 Equilibrage de charge et disponibilité Serveur A Cluster primaire Serveur B Secondaire Réplication de létat des processus clients Cookie A,B En cas de panne de A, basculement automatique sur B

5 5 Le problème daccès aux données Compromis entre performances et flexibilité difficile à obtenir performances : sappuyer au maximum sur le serveur BD => procédures stockées flexibilité : composants métiers encapsulant laccès aux données Composants métiers Procédures stockées Où mettre la logique applicative ? Serveur dapplicationServeur de données

6 6 Accès BD en C/S 2 tiers Développement dapplications BD en 2 étapes 1conception de la BD création des tables et des contraintes dintégrité 2programmation des procédures stockées Très efficace procédures stockées et contraintes dintégrité exécutées sur le serveur BD Evolution difficile la modification dune définition de données implique la recompilation des procédures stockées

7 7 Composants avec accès BD Similaire au C/S + efficace - composants non autonomes Gestionnaire de commandes Commande Produit Select C.a, P.b, … From C, P Where …

8 8 Composants encapsulant leurs données Principe dîlot de données ensemble de données entièrement contenu dans un composant métier exige une forte localité des données/composant + composants autonomes - performances Gestionnaire de commandes Commande Produit

9 9 Comment améliorer les performances Faire des composants métiers à gros grain encapsulation des données fortement corrélées par ex. 5 à 10 définitions de tables relationnelles Exploiter les vues relationnelles pour les données partagées entre plusieurs composants Mettre en œuvre un cache de données au niveau du serveur dapplication transformation objet/relationnel

10 10 2. Le standard J2EE (Sun et al.) De nombreuses API EJB: modèle de composants serveurs JNDI: accès aux services dannuaire DNS, LDAP RMI:invocation de méthodes Java à distance JIDL: Java IDL - interface Corba JSP: Java Server Pages (Java ds pages HTML) JMS: Java Messaging Service JTS: Java Transaction Service (basé sur OTS) JDBC: accès aux BD via SQL JDO: Java Data Objects JAX: Java XML JCA: Java Connector Architecture...

11 11 JAX Pour intégrer XML et les services web JAX-RPC (Java API for XML RPC) pour effectuer des appels de messages SOAP JAXM (Java API for XML Messaging) pour envoyer des documents XML via SOAP JAXR (Java API for XML Registries) pour accéder des annuaires de services de type UDDI

12 12 Support Comm. TCP/IP, HTTP, RMI, IIOP, SOAP, etc. Architecture dun serveur J2EE Entity Bean Container EJB Session Bean Logique de présentation Logique métier Java Server Page Container Web HTML/XML Servlet Java Bean Services de base JDBC, JTS, JNDI, JMS, JDO, JAX, etc.

13 13 Principaux serveurs J2EE EditeurProduitPoints fortsOrdre de prix BEA-OracleWebLogicTransactionnel, outils10K IBMWebsphereTransactionnel, intégration avec DB2 UDB 10K OracleASIntégré dans loffre Oracle10K HPTotal-e- server Intégré avec les middlewares HP 10K BorlandAppServerBasé sur Visibroker, outils10K SunGlassFishLogiciel libre (dernier né)Gratuit RedhatJbossLogiciel libreGratuit ApacheJeronimoLogiciel libreGratuit ObjectwebJonasLogiciel libreGratuit

14 14 WebSphere Application Server Support J2EE complet Support des transactions Interopérabilité avec le moniteur TXSeries Serveur HTTP basé sur Apache Support des clusters partitionnement des applications et équilibrage de charge Intégration avec Studio Application Developer DB2 pour la gestion de données et le stockage de XML Tivoli pour la gestion de réseau Versant enJin pour les objets persistants

15 15 WebLogic (BEA-Oracle) Support J2EE complet Serveur HTTP intégré Plugins pour Apache, IIS, Iplanet Support des transactions interopérabilité avec le moniteur BEA Tuxedo Support des clusters disponibilité et équilibrage de charge Environnement de développement WebLogic Builder pour le développement Java WebLogic Workshop pour les Web services Intégration avec Nokia WAP server pour les mobiles TopLink (WebGain) pour le mapping objet-relationnel Versant enJin pour les objets persistants

16 16 3. Etude de cas: EDF GDF Application de relation client (CRM) : Niveau1 Utilisée par agents de clientèle répartis sur 1300 agences Gestion commerciale, gestion des contacts, outils marketing, utilitaires (mailings, etc.) Architecture technique C/S (client lourd) avec 2 nouvelles versions par an SI sur mainframes IBM (un centre par département) Plusieurs BD et une partition CICS par centre Besoins Réactivité croissante aux demandes des agents Déploiement plus rapide des nouvelles versions

17 17 Solution Architecture n-tiers Client léger WebLogic: serveur J2EE sur plusieurs serveurs Scort: Progiciel dintégration avec les applications mainframes avec des composants J2EE sur WebLogic Résultats obtenus Satisfaction des besoins Niveau1 offre 2 modes daccès transparents aux clients: Accès aux mainframes en récupérant une connexion pour exécuter des transactions Smart publishing: navigation en mode publication à la volée

18 18 Le problème de la persistance des objets Létat des objets modifiés par les entity beans doit être sauvegardé durant lexécution Approche classique: BD relationnelle avec mapping objet-relationnel en général très inefficace avec des entity beans CMP (cf étude de SQLi mars 2002) Solutions propriétaire de type TopLink mapping vers une BD objet, par ex. Versant enJin la plus productive et efficace selon SQLi

19 19 Versant enJin Serveur dapplication Bean Commande Bean Produit Serveur dapplication Bean Commande Bean Produit transactions Tiers backend Bases de données Mapping O/R automatique Cache partagé SGBDO Versant

20 20 Avantages de Versant enJin Persistance des objets Java transparente simple pour le développeur pas besoin de programmer en JDBC ou autre Cache dobjets partagés entre différents serveurs performances et cohérence via le SGBDO Versant Mapping objet-relationnel automatique vers les BD existantes définition de la fréquence de synchronisation online, batch, etc.

21 21 4. Microsoft.NET Evolution majeure de la plateforme Windows les APIs Windows sont remplacées par des bibliothèques de classes objet intégration de C#, Linq portabilité des applications.NET Microsoft Intermediate Language (MSIL) exécuté par CLR sécurité renforcée avec vérification de code intégration avec COM et Microsoft Transaction Server (MTS) support direct des services Web, de XML et de SOAP avec Visual Studio.NET

22 22 Architecture de MTS MTS Active Server Page (ASP) Internet Information Server (IIS) HTML XML Executive threads wrapper context factory trans. cache SQLServer Oracle Windows Autres ADO HTTP DCOM

23 23 Modèle de composants MTS Composant pas détat (équivalent à EJB session bean) Container executive : entre client et composant serveur context wrapper définition du comportement trans. du composant par le développeur (par positionnement dattributs avec Explorer) context object appelé automatiquement par MTS pour coordonner les transactions en 2 phases Serveur Windows

24 24 Exemple de code applicatif MTS Set ctxObject = GetObjectContext () // accès à lobjet contexte de MTS { code applicatif } Set objExemple = ctxObject.CreateInstance () // création dun objet MTS { code applicatif } If (OK) ctxObject.SetComplete () // validation de la transaction Else ctxObject.SetAbort () // annulation de la transaction

25 25 Le framework.NET ASP.NET Docs HTML XML BCL.NET Base class library ADO.NET Active Data Objects Common Language Runtime (CLR) Windows et COM/MTS Visual Studio.NET Outils SOAP et XML VB, C++, C#, Jscript, Java,etc.

26 26 Serveur J2EE versus.NET Serveur J2EE limité à Java transactions explicites généralité objets avec état: entity beans problème de performances des beans CMP portabilité.NET multi-langage transactions implicites simplicité objets sans état utiliser ADO pour laccès aux données propriétaire, intégré dans le monde Windows

27 27 Conclusion sur les serveurs dapplication Un modèle darchitecture réellement distribué cache la complexité du middleware Critères de choix d un serveur dapplication support des standards J2EE, Web services plate-formes supportées performances et débit transactionnel environnement de développement


Télécharger ppt "Serveurs dapplication 1.Architecture 2.Le standard J2EE 3.Etude de cas: EDF GDF 4..NET de Microsoft."

Présentations similaires


Annonces Google