WebLogic Server im Zusammenspiel mit Real Application Cluster Michael Bräuer – Leitender Systemberater Sylvie Lübeck – Leitende Systemberaterin ORACLE Deutschland B.V. & Co. KG The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Agenda • HA und Skalierbarkeit in jeder Schicht? • Was ist Active GridLink for RAC? • Wie funktioniert es? • DEMO • Vergleich mit Multi Datasource • Links & Co? HA und Skalierbarkeit in jeder Schicht? … mittels Services im RAC ERP Web ERP Web Test ERP Daten Data AA-Z DW Daten DW Web Daten … und mit WebLogic • Von klein nach GROSS • Skalierbar UND Hochverfügbar • nach Bedarf erweiterbar ohne Ausfallzeit Was ist Active GridLink? Datasource Managed Server1 GridLink Data Source Managed Server2 RAC Aware Connection Pool Oracle Database RAC Node 1 Oracle Database Service WebLogic Cluster FAN WebLogic Domain Oracle Notification Service vereinfachte Konfiguration: Single Data Source Ereignis basiertes Modell (ONS und FAN) für flexibles Pool Management SCAN Unterstützung Fast Connection Failover Runtime Connection Load Balancing Affinität für Connection Routing (XA, Session) UCP Connection Labeling Data Guard RAC One Node Support Node Manager • • • • • • • • • RAC Node 3 RAC Node 2 RAC Node 4 Wie funktioniert Active GridLink? WebLogic UCP-RAC Module WebLogic Server RAC (1) Single WLS connection Service A pool for service A ONS Daemon Advisories ONS client UCP-RAC module ONS Daemon RAC (2) Service A Wie funktioniert Active GridLink? Fast Connection Failover (FCF) • • • • erkennt zeitnah Ausfälle der Datenbank beendet ungültige Verbindungen aus dem Pool unterstützt geplante und ungeplante Ausfälle erkennt neue Knoten die zum RAC Cluster hinzukommen • verteilt Anfragen an verfügbare Oracle RAC Instanzen Wie funktioniert Active GridLink? Lastverteilung (Runtime Connection Load Balancing) • Datenbank-Verbindungen im Pool zur Hochverfügbarkeit und Skalierbarkeit • bekommt kontinuierlich Empfehlungen bzgl. der prozentualen Verteilung der Anfragen an die Datenbank Instanzen • adaptiert die Lastverteilung basierend auf die jeweilige Kapazität der Knoten wie z.B. CPU Zeit und Antwortzeitverhalten • reagiert schnell auf Änderungen in der Cluster Konfiguration, Anwendungslast, überlastete Knoten oder Systemfehler Wie funktioniert Active GridLink? Lastverteilung (Runtime Connection Load Balancing) RAC Datenbank 30% der Verbindungen WebLogic Connection Pool hohe Last Instanz 1 10% der Verbindungen Anwendung sehr hohe Last geringe Last 60% der Verbindungen Instanz 2 Instanz 3 Wie funktioniert Active GridLink? XA Transaction Affinity • ermöglicht das Zusammenspiel von XA und RAC mit optimaler Performance – behebt aktuelle Einschränkungen bei single DTP Services für XA/RAC • automatische Zuweisung globaler Transaktionen an eine einzelne RAC Instanz • im Lebenszyklus einer globalen Transaktion • erster connection request einer globalen Transaktion verwendet RCLB • folgende Anfragen verwenden die XA Transaktions Affinität und werden zur selben RAC Instanz geleitet Wie funktioniert Active GridLink? XA Transaction Affinity RAC Database TX Client 2 TX Client 1 Instance1 WebLogic Connection Pool Instance2 Connection Affinity Context Instance3 Wie funktioniert Active GridLink? Web Session Affinity – WebLogic Server 11g(10.3.6) • erste Anfrage verwendet RCLB zur Auswahl einer Verbindung • folgende Anfragen nutzen die XA Affinität • nach Abschluss der Affinität wieder RCLB zur Auswahl der Verbindung • die Affinität ist nur ein Hinweis • der Pool verwendet erneut RCLB sobald eine gewünschte Verbindung nicht auffindbar ist Wie funktioniert Active GridLink? Web Session Affinity – WebLogic Server 11g(10.3.6) Application EJB Data Source JSP Data Source Servlet Data Source WebLogic Server RAC Database Instance1 Connect to me Instance2 Web Logic Connection Pool Connection Affinity Context Instance3 Active Gridlink for RAC D E M O WebLogic GridLink Configuration Wie funktioniert Active GridLink? GridLink Data Source SCAN Configuration (SCAN) Wie funktioniert Active GridLink? GridLink Data Source SCAN Configuration (ONS) Vergleich mit Multi Data Sources WebLogic Server 8.1sp5, 9.x, 10, 10.3 Data Source A JNDI JDBC/mds JDBC/ mds close connection look up … Application N getConnection Multi Data Source connection Application A … connection Exec SQL JDBC Driver Data Source B … Data Source C … WebLogic Server RAC Vergleich mit Multi Data Sources Multi Data Sources, Active GridLink Data Source • zwei verschiedene Verbindungen • Multi Data Sources, Active GridLink Data Source • Multi Data Sources • native Implementierung innerhalb des WebLogic Server • ausgelegt für WebLogic Server Transaktionen, Datasources, Connection Pooling, Death Detection • dient als Abstraktionsschicht über eine Gruppe einzelner Datasources • Active GridLink Data Source • vereinfachte Data Source Konfiguration für RAC und Service Connectivität – Single Data Source • nutzt RAC Benachrichtigungen für Fast-Connection-Failover • verbessertes Load Balancing und graceful RAC instance shutdown • verbesserte RAC Instanz Affinität (Session & verteilte Transaktion) Links & Co. • Java aktuell – Das iJUG Magazin • Artikel in der Ausgabe 03/2012 • Dokumentation - WLS 10.3.6 / WLS 12.1.1 • Configuring and Managing JDBC Data Sources for Oracle WebLogic Server http://docs.oracle.com/cd/E23943_01/web.1111/e13737/toc.htm http://docs.oracle.com/cd/E24329_01/web.1211/e24367/toc.htm • White Paper: • Oracle WebLogic Server Active GridLink for Oracle Real Application Clusters (RAC) • How-To: • Use Oracle WebLogic Server with a JDBC GridLink Data Source WebLogic Server im Zusammenspiel mit Real Application Cluster Michael Bräuer – Leitender Systemberater Sylvie Lübeck – Leitende Systemberaterin ORACLE Deutschland B.V. & Co. KG