Apports du cloud d`Oracle à WebLogic Application Server 2-2
Transcription
Apports du cloud d`Oracle à WebLogic Application Server 2-2
<Insert Picture Here> WebLogic Suite Pascal Fuget Consultant Ventes Principal Oracle Fusion Middleware? •Complet Web Social •Best-in-Class •Intégré •Ouvert User Engagement Business Process Management >5,000-strong Dev team >120,000 clients >5,500 ISVs certifiés >20,000 Sis entrainés Content Management Service Integration Business Intelligence Data Integration Identity Management & Security Fusion Middleware ‘En chiffres’ • • • • Mobile Development Tools Cloud Application Foundation Enterprise Management L’ensemble des fonctions partagées qui supporte le cycle de vie des applications ou services modernes. 2 | © 2011 Oracle Corporation – Proprietary and Confidential Oracle Cloud Application Foundation Foundation for Oracle Fusion Middleware in the Cloud Web Mobile Social Oracle Public Cloud Exalogic Elastic Cloud User Engagement Traffic Director Business Process Management Content Management Business Intelligence WebLogic Server Service Integration Coherence Tuxedo Data Integration Cloud Application Foundation Identity Management & Security Development Tools 3 | Cloud Application Foundation © 2011 Oracle Corporation – Proprietary and Confidential Enterprise Management WebLogic Versions préconisées © 2009 Oracle Corporation – Proprietary and Confidential 4 Les versions disponibles • WebLogic Server 11g • La version WebLogic Server 10.3.5 bénéficie d’un support étendu jusqu’à la version finale de WLS 11g. • Certifiée JEE 5. • JDK 6. • WebLogic Server 12c • • • • La version interne est 12.1.1.0 (alignement des numéros) Certifiée JEE 6. JDK 6 avantage de ne pas toucher au code applicatif. JDK 7 certifié à installer séparément. © 2009 Oracle Corporation – Proprietary and Confidential Haute disponibilité Clustering © 2009 Oracle Corporation – Proprietary and Confidential 6 Rappel terminologie WebLogic • Domain – groupe d’instances et de clusters contrôlés de manière unifiée • Administration Server – centre de configuration et de contrôle du domaine • Managed Server - Instance hébergeant les applications et les ressources nécessaires • Cluster - groupe de managed servers permettant la scalabilité et la fiabilité • Node Manager – process / machine pour démarrage, arrêt (automatique) d’ instances Terminologie Clusters • Zéro à n clusters dans un domaine • 1 à n serveurs par cluster • Des serveurs peuvent être hors cluster Example domain: 2 clusters - 1 for hosting “UI” part of a distributed app,1 for “Business Logic” Bénéfices de WebLogic Cluster • Scalabilité • Equilibrage de charge • Distribution des tâches équitable • De multiple copies d’un objet réalisant la même tâche sont disponibles • Haute disponibilité • Reprise sur panne • Quand un objet réalisant une tâche devient indisponible, une copie de cet objet reprend l’activité et termine le travail ailleurs Clustering Pour quoi faire ? 10 WebLogic Haute Disponibilité Erreur données Erreur Humaine WLS avec Oracle RAC Sinistre du site Panne software ARRET NON PLANNIFIE Pannes & Solutions WAN Clusters Disaster Recovery Clusters Service Migration Panne matérielle Clusters Server & Service Migration Clusterware integration Disaster Recovery Architecture All State Can be Persisted in Oracle for Simplified Disaster Recovery Global Load Balancer Active Site Standby Site Web Tier Web Tier Local LB Local Web Tier LB Local Web TierLB Web Tier Binaries Binaries Configuration Configuration Local LB Local WebLB Tier Local WebLB Tier Web Tier File replication for more static files Middleware Tier WebLogic WebLogic WebLogic Middleware Tier Binaries Binaries Configuration Configuration Oracle RAC Oracle RAC Transaction Logs JMS Messages Application Data 12 WebLogic WebLogic WebLogic Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Active Dataguard or GoldenGate for transactional data Transaction Logs JMS Messages Application Data WebLogic Haute Disponibilité Mise à jour d’application Redéploiement à chaud Déploiement côte à côte ARRET PLANNIFIE Opérations & Solutions Changement de Configuration Mise à jour matérielles Changements dynamiques Mise à jour cluster en tourniquet Réplication d’Etat WebLogic Résister à une panne de WebLogic Server Domain State Replication Domain Cluster Managed Server 1 State 1 Load Balancer Managed Server 2 MAN State Replication Local Load Balancer Cluster 1 State 1 Local Load Balancer State 2 Global Load Balancer Cluster 1 State 1 State 2 Global Load Balancer Local Load Balancer Cluster 2 State 3 State 4 State 2 In Memory or Database Backed Asynch or Synch WAN State Replication In Memory Local Load Balancer Cluster 2 State 3 State 4 Database Backed Asynch 14 Haute disponibilité Active GridLink for RAC 16 16 Oracle RAC La scalabilité sans souffrance • Démarrer petit, croitre à la demande • Scalable ET hautement disponible • Ajout de ressources sans interruption de service 17 WebLogic Server Multi Data Sources 8.1sp5, 9.x, 10, 10.3 Data Source A JNDI JDBC/mds look up Application A … … getConnection Multi Data Source close Exec SQL connection connection connection JDBC Driver Data Source B … Application N Data Source C … WebLogic Server RAC 18 Active GridLink for RAC (WLS 10.3.4+) WebLogic Cluster Datasource Managed Server1 GridLink Data Source Managed Server2 RAC Aware Connection Pool Oracle Database RAC Node 1 RAC Node 2 Oracle Database Service WebLogic Domain Oracle Notification Service Configuration plus simple: un seul data source Event-Based Model (ONS et FAN) pour une gestion pré emptive du pool SCAN Support Fast Connection Failover Runtime Connection Load Balancing Affinitié pour le routage des connexions (XA, Session, Data) WebLogic Connection Labeling Data Guard Support RAC One Node Support Node Manager • • • • • • • • • RAC Node 3 RAC Node 4 WebLogic UCP-RAC Module WebLogic Server RAC (1) Single WLS connection Polling pool for service A Service A ONS Daemon Advisories ONS Daemon ONS client UCP-RAC module RAC (2) Service A Comment FCF fonctionne Fail-over Handler Thread Start ONS Subscribe X X X Handle Event WebLogic RAC AwareConnection Pool ONS Publish RAC Database X Instance1 Instance2 Instance3 How RCLB Works RAC Database 30% connections WebLogic Connection Pool I’m busy Instance1 10% connections Application I’m very busy I’m idle 60% connections Instance2 Instance3 Transaction Based Affinity RAC Database TX Client 2 TX Client 1 Instance1 Instance2 WebLogic Connection Pool Connection Affinity Context Instance3 Active GridLink for RAC Web Session Affinity – WebLogic Server 11g(10.3.6) Application EJB Data Source JSP Data Source RAC Database Instance1 Connect to me Servlet Data Source WebLogic Server Instance2 Web Logic Connection Pool Connection Affinity Context Instance3 Haute disponibilité Migration de service JMS Déploiement en parallèle 25 Migration de Serveur Complet Continuité de service des applications et des ressources • Migration automatique de serveur en panne • Le serveur redémarre et reprend l’activité sur une autre machine • Migration unitaire de service tel que JMS WebLogic Cluster Administration Server Managed WLS 2 Resources 2 Detect Failure Managed WLS 3 Managed WLS 2 Resources 3 Resources Spare 2 Capacity Migrate Server Machine 1 Machine 2 (Cluster Master) Machine 3 Domain Database or Consensus Leasing Storage Area Network 26 Infrastructure JMS Pouvoir envoyer et recevoir des messages en permanence Distributed Destinations Tous les messages doivent être traités Migration de Serveur complet et de Service Bascule du client transparente Reconnection automatique Pouvoir envoyer des messages quand le serveur distant est inaccessible Stocker et propager Client SAF 27 Déploiement côte à côte Zero Indisponibilité Nouvelle version d’application déployée côte-à-côte avec l’ancienne dans la même JVM Clients déjà connectés continuent d’être servis par l’ancienne version Nouveaux clients se connectent sur la nouvelle version • Test des versions avant ouverture aux utilisateurs • Rollback sur version antérieure • Retrait automatique – gracieux ou timeout Existing External Client Connections New External Client Connections When Activated Application Version One Application Version Two Managed WebLogic Server Single Java VM Test First in Administrative Mode Internal Client Connections 28 WebLogic 12c Nouveautés 29 29 WebLogic Server 12c – New Features Java EE 6 Database Enterprise Scale • JSP 2.1, JSF 2.0 • • • EJB 3.1, JPA 2.0 GridLink – Session Affinity Database Transaction Logs • • GridLink – Transaction Affinity • Context and Dependency Injection Database Store Performance • GridLink – Fast Connection Failover Enterprise Manager 12c • Restful Web Services Developer Performance • Cloud Management • Diagnostics Advisor • Incident and Problem Management • Patch Automation Cloud • Optimized WebLogic Virtual Appliances • Coherence Exalogic Exabus • WebLogic Elastic Message Overflow • Coherence Elastic Data • Exalogic HTTP, JMS and Web Service Performance • TopLink Multi-Tenancy Security Updates • New Certification Validation • New SPNEGO Update • New RSA Update • New JSSE Support Over 200 New Features • JDeveloper • Eclipse • NetBeans • Maven Java SE • SPECjEnterprise World Records– EjOPS Overall, EjOPS/Core, EjOPS/Processor Traffic Management • Coherence Transactions • Software Load Balancer • Coherence Rest • Coherence Query Explain Plan • Java SE 6 • Traffic Shaping • Java SE 7 • SSL Termination 30 Distributed Caching Copyright © 2011, Oracle and/or its affiliates. All rights reserved. Oracle WebLogic Server 12c New Capabilities • Java EE 6 and Developer Productivity • Simplified Deployment and Management with Virtualization • Integrated Traffic Management • Enhanced High Availability and Disaster Recovery • Much Higher Performance • Seamless Upgrade 31 | © 2011 Oracle Corporation – Proprietary and Confidential Administration étendue Enterprise Manager Cloud Control 32 | © 2011 Oracle Corporation – Proprietary and Confidential 32 Administration et supervision avec OEM Monitor all applications, all domains from one console • Manage multiple domains centrally • Monitoring spans: – Clusters and servers – Applications (servlets, JSPs, EJBs) – Resources (JDBC connection pool, data sources) • Predefined metrics – Performance and availability – Real-time monitoring – Historical monitoring for trending and reporting Single page summarizing status & potential problems across all domains Cloud Introduction 34 Deploy to Virtual and Cloud Environments Enterprise Cloud App App Public Cloud App Middleware Run IT as an Enterprise Cloud Run applications in the Cloud Deploy Applications to Wherever it is Optimal Assembly Deployment Into OVM 3.0 Assembly Archive OVAB Studio 1 OHS 2 WLS Assembly Admin creates assembly OHS WLS OHS WLS Coh Coherence 3 Upload assemblies OVM Manage r 4 Deploy, undeploy assemblies Linux OVS x86 H/W x86 H/W OVM Resource Pool WLS Coh 5 DB Reference system Assembl y Reposito ry EMG C Discover application components and assembly topology with EMGC Coherence Cache & Grille de données 37 37 Pourquoi sortir de la base de données pour étendre les applications java? Database Tables Application Object Relational Java Un goulot d’étranglement pour les Performances SQL server • Volume • Complexité • Fréquence d’accès 38 Oracle Coherence Data Grid Données distribuées en Mémoire Enterprise Applications Real Time Clients Web services Data Services Oracle Coherence Data Grid Web services Databases Mainframes • Fournit un espace de données avec une vue unique et consolidée. • Offre une répartition dynamique incluant la tolérance aux pannes et équilibrage de charge • Permet d’étendre les capacités données avec les capacités de traitement 39 Oracle Coherence fournisseur de données • Oracle Coherence fournit les données en fonction de la demande • Etend la grille de données en utilisant les capacités matérielles Ever Expanding Universe of Users Web Servers Application Servers 101100010110010111011001011001011100011101111110001110 10110001011001011101100101100101110001110 Data Demand Java Objects Data Supply Data Sources 40 Comment fonctionne Oracle Coherence Data Grid ? • Données équilibrées en mémoire dans un cluster de serveurs • Données répliquées automatiquement en synchrone vers au moins un serveur • Une seule image du système: vue Logique de toutes les données sur tous les serveurs ? • Les serveurs se surveillent entre eux • En cas de problème sur un serveur les autres diagnostiquent son état de manière coopérative • Les serveurs en bon état reprennent immédiatemment les fonctions du serveur en erreur • Service Continu : pas d’interruption de service ou de perte de données en cas de panne de serveur X 41 Cas d’usage de Coherence Cache Les applications demandent les données à la grille plutôt qu’aux système de données de stockage Analyses Les applications interrogent la grille de données avec des questions pouvant être simples ou très avancées Transactions La grille agit comme un système transactionnel hébergeant les données et la logique métier Evènements Traitement automatiqye basé sur les évènements 42 Coherence Scalabilité De WebLogic 43 43 Difficultés de montées en charge des Serveurs d’Application • Etendre les caches de données • Difficile d’étendre des caches de données fiable en cluster • Cohérence, expiration, localisation … • Stocker les états • Les états sont lourds et coûteux • Difficile de gérer l’état indépendamment du serveur d’application • Augmenter les transactions base de données WebLogic Domain Node Manager WebLogic Cluster Managed Server1 Managed Server2 Cached Data??? Shared State??? Transactions??? • Difficile de conserver les données de la base d’une application en forte charge tout en maintenant l’intégrité transactionelle Database 44 Etendre WebLogic avec Coherence Cache en cluster et Partage d’Etat • Partager le cache de données, gestion d’état indépendant sur des infrastructures Java hétérogènes WebLogic Cluster Managed WLS Managed WLS Application Application Application Coherence Client Coherence Client Coherence Client WebLogic Machines Named Cache Coherence (Java) Java Applications Java/JEE Container App Machines Named Cache Named Cache Named Cache Named Cache Coherence (Java) Cluster Service Coherence (Java) Coherence (Java) Coherence (Java) 45 Etendre WebLogic avec Coherence Protéger la base des montées en charge • Lecture synchrone et écriture (a)synchrone en base de données avec TopLink, Hibernate, JDBC, Kodo … WebLogic Cluster Managed WLS Managed WLS Java Applications Java/JEE Container Application Application Application Coherence Client Coherence Client Coherence Client WebLogic Machines App Machines Named Cache Named Cache Named Cache Named Cache Named Cache Cache Store Cache Store Cache Store Cache Store Cache Store Coherence (Java) Cluster Service Coherence (Java) Coherence (Java) Coherence (Java) Coherence (Java) Synchronous/Asynchronous Synchronous/Asynchronous 46 Coherence WebLogic & Coherence*Web 47 47 WebLogic Suite 11g & Coherence * Web • Réplication “Standard” WebLogic Server des sessions HTTP • Réplication “Optimisée” des sessions HTTP avec WebLogic Suite 11g 48 Partie Web “Optimisée” Grille dédiée aux sessions • Partie serveur web • Elle devient “sans stockage d’état” • Optimisée pour traiter les requêtes • On peut ajouter/retirer des serveurs sans impact sur les sessions en cours HTTP/JSP WebLogic Server • Partie Session • Noeuds Coherence autonomes • Pas de changement de code pour les applications qui utilisent des solutions de réplication de session. • Sessions partégées entre les serveurs Web, même entre applications • Faible coût memoire/CPU, démarrage rapide • Peut gérer des sessions lourdes (10MB+) • Réseau optimisé, sérialisation Sessions Coherence*Web 49 Topologie partie Web Optimisée Web Séparation des traitements, gestion des sessions HTTP/JSP Sessions WebLogic Server Coherence*Web EJB JDBC WebLogic Server RDBMS HTTP/JSP Sessions WebLogic Server Coherence*Web Engine Tier Session Tier EJB JDBC WebLogic Server Object Tier “Optimized” Web Tier 50 Modèle de Session Optimisé et Sérialisation • Split Session Model • Session divisée, permettant aux metadonnées et aux attributs fréquemment utilisés d’être accédés indépendamment des objets de session plus lourds • Améliore souvent les temps d’accés et l’utilisation mémoire • Portable Object Format Serialization • POF élimine les metadonnées inutiles et optimise la désérialisation (7x) et la mémoire (6x) par rapport à la sérialisation Java 51 Messagerie Performance 52 52 Performance • WLS JMS Performance • Messagerie persistante très performante • 10x plus rapide qu’avec WLS 8.1 • Particulièrement efficace en Persistence et scalabilité • Points clé - WLS JMS est rapide grâce • A des améliorations dans toutes les couches • Threading, XA, persistence, serialisation, réseau • Réécriture complète du File Store • Optimisations du Database Store (JDBC Statement Batching, etc.) • Utiliser WLS Messaging est plus efficace • Pas besoin de serialiser/de-serialiser les messages entre Application Container (WLS) et un fournisseur JMS externe 53 Benchmark interne Exemple: Persistent Queuing – Sync File Writes • Performance de WLS JMS : égale ou supérieure aux autres jusqu’à 6X dans les 92 benchmarks. • Une queue, même nombre de producteurs et consommateurs de1 à 64 • Safe Synchronous File Writes • Messages de100 byte et 4 kb • Le tableau est parlant ! 7000 6000 5000 4000 3000 2000 1000 0 1 2 WL 100byte WL 4K 4 8 16 32 64 Other 100byte Other 4K 54 Exalogic 55 55 Une Plateforme pour toute l’entreprise Performance, solidité et simplicité • Meilleure Performance Java • Performance des applications améliorées jusqu’à x10 • Fondation pour le Cloud • Consolidation des applications • Adaptation des capacités à la demande • Système pensé • Moins cher à déployer et opérer • Chemin plus rapide vers la production 56 Fondation d’Oracle Elastic Cloud Application Grid, OS, Enterprise Manager et matériel WebLogic Server Coherence Enterprise Manager JRockit and HotSpot Tuxedo Exalogic Elastic Cloud Software Oracle Linux or Solaris Exalogic Elastic Cloud Hardware EL X2-2 57 Etendre à la Demande Démarrer petit et grandir • Mise à jour vers des configurations larges • Livré et installé par Oracle EL X2-2 Quarter Rack Half Rack Full Rack Compute Nodes 8 16 30 2.93 GHz XEON Cores 96 192 360 1333 MHz DRAM 768 GB 1.5 TB 2.9 TB Raw Disk Storage 40TB 40TB 40TB EL T3-1B Small Medium Large Compute Nodes 10 20 30 1.6 GHz SPARC Cores 160 320 480 1333 MHz DRAM 1.3 TB 2.6 TB 3.8 TB Raw Disk Storage 40TB 40TB 40TB 58 Java Extrême La puissance d’Oracle Exalogic Elastic Cloud Software 250 450 (Higher is better) 400 Tx/Sec 200 (Lower latency is Better) 350 300 150 250 100 200 150 50 100 50 0 Update Standard WebLogic Server Insert Delete 0 CreateWS Purchase GridLink for Exadata 2-3X improvement in Database OLTP – Run-time connection load balancing – JDBC over SDP Manage Standard Platform 60% more Java Operations/sec. – Enhanced buffer handling for InfiniBand – Optimized multi-core scheduler Browse Exalogic Up to 10X faster response time – Cluster IPC multiplexing over SDP – Scatter-gather IO 59 Oracle Exalogic Elastic Cloud Fournir une réelle valeur au métier Performance Java Extrême Mission Critical Cloud Système Intégré Amélioré jusqu’à Coût Opérationnel Réduit jusqu’à Temps Déploiement Réduit 10X 60% 90% 60 61