Top Banner
Jayesh Patel [email protected] 703.589.8403 WebLogic JMS Clustering
20

WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

Mar 07, 2018

Download

Documents

doandat
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

Jayesh Patel [email protected]

703.589.8403

WebLogic JMS Clustering

Page 2: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

About the Presenter

� Independent J2EE/WebLogic consultant

� 9 years of IT experience.

� Current Work at EDS/Federal Reserve Bank’s TWAI (Treasury Web Application Infrastructure) project.

� 7 years of focus in J2EE/WebLogic Technologies, Previously worked at BEA.

� Design, Development, Performance Tuning and Enterprise Architecture.

Page 3: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – Agenda

� JMS Basics

� WebLogic JMS

� Clustered JMS

� Overview

� Load Balancing

� Migration/Failover

� WebLogic 9.0

� Key JMS Enhancements

Page 4: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering - JMS Basics

� Specifies API to access Enterprise Messaging

� Enables Java applications to exchange messages.

� Part of the J2EE� J2EE 1.3 -> JMS 1.0.2b – WLS 8.1� J2EE 1.4 -> JMS1.1 – WLS9.0

� Client-Provider Architecture � Point to Point � Publish/Subscribe

� Does not specify …� Transport protocol� Clustering and Administration capabilities.

Page 5: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering - JMS Basics

� Point to Point

� Each message is delivered to only one consumer.

� Publish/Subscribe

� Each matching consumer receives a message

Page 6: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering - JMS Basics

� Message Producer and Consumers are decoupled.

� Message Consumption Modes� Synchronous

� Asynchronous - MessageListener

� Acknowledgment Modes � AUTO_ACKNOWLEDGE

� CLIENT_ACKNOWLEDGE

� DUPS_OK_ACKNOWLEDGE

Page 7: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – WebLogic JMS

� WebLogic JMS Server runs in WebLogic Server Process

� Admin Console provide administration capabilities

� Client and Server communicates using � T3, IIOP, HTTP� SSL is supported for each protocol.

� Integrated with � WebLogic Transaction Manager � WebLogic Security Framework

Page 8: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – WebLogic JMS

Page 9: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – Overview

� WebLogic JMS Server

� Pinned to single server instance - Data Integrity.

� Migratable to the alive WebLogic instance –Failover

� Clustered JMS Resources

� Distributed Destination � Virtual Destination with Physical Member Destinations

� Uniform Distributed Destination – WLS 9.0

� Clustered Connection Factory� Connection load balancing

� Message load balancing

Page 10: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – Load Balancing

� Options� Round Robin Distribution � Random � Weight Based Distribution

� Consumer Load Balancing � Consumers are load balanced � Pinned to physical destination – After consumer is created.

� Producer Load Balancing � Producer connection is load balanced � Each message produced is load balanced across member destinations

Page 11: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – Distributed Queue

Page 12: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering– Distributed Topic

Page 13: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering - Load Balancing Heuristics

� Transaction Affinity� Messages in transacted session

� Server Affinity� Load balance to local members of the server instance.

� Queues With Zero Consumers� Queues with zero consumer are considered for load balancing until all physical Q’s have one consumer

� Message Load Balancing – Skips queue with Zero consumers

� Paused Distributed Destination Members – WLS 9.0� Load Balancing algorithm skips paused destination

Page 14: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – JMS Server Migration

� JMS Server Migration� Scheduled migration. � In response of the server failure.

� Requirements � JMS store should accessible from source and destination server

� Migratable target server should belong to same cluster

� Server Migration � WLS 8.1 – Manual migration � WLS 9.0 - Automated migration

Page 15: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – JMS Server Migration

Page 16: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

JMS Clustering – JMS Server Migration� JMS Server Migration

� Key Points

� MDB’s are migrated automatically

� Non-MDB subscribers need to recreated.

� Local Destination JNDI will cause conflict.

� JMS Server Recovery

� JMS Server can be migrated back to original server.

� Run “java weblogic.PurgeConfigCache” before starting original Server to prevent redundant activation of the migrated service.

Page 17: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

WebLogic 9.0 Messaging Enhancements

� Support for JMS 1.1 API

� Store and Forward� Messaging to potentially unavailable endpoints

� Improved reliability –asynchronous store and forward between servers and domains

� Preserves message ordering

� Used to support WS-ReliableMessaging

� More efficient than two-phase JTA transactions

Page 18: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

WebLogic 9.0 Messaging Enhancements� Automated JMS Server failover in cluster

� Heartbeat enables migration � It was manual in 8.1 � Failover of the persistence messages – File Store , JDBC Store

� JMS Server Administration� View / browse all messages� Delete, move, import, export messages� Pause / resume individual message� Modular configuration of JMS Resources in EAR/WAR� Message Life Cycle Logging

� Performance � Improved file store implementation with advanced performance I/O algorithm.

� MDB Bach transactions.

Page 19: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

Resources

� JMS Resources� Product Documentation

� http://e-docs.bea.com/wls/docs81/messaging.html

� http://e-docs.bea.com/wls/docs90/messaging.html

� BEA dev2dev Web Site – White Papers , Examples and Documentation.

� http://dev2dev.bea.com/technologies/jms/index.jsp

� JMS Newsgroups� http://forums.bea.com/bea/forum.jspa?forumID=2023

� JMS Specification � http://java.sun.com/products/jms/docs.html

� Java User Group Forum � [email protected]

Page 20: WebLogic JMS Clustering - yagnasysyagnasys.com/uploads/NOVAJug-Weblogic-JMS-Clustering.pdf · WebLogic JMS Clustering. ... WebLogic JMS Server runs in WebLogic Server Process Admin

WebLogic JMS Clustering

Questions?

Jayesh Patel, [email protected]/WebLogic/SOA ConsultantArchitecture Assessment Architecture Validation- Proof of Concept System Optimization - Performance Tuning Outage Analysis System Integration, Disaster Recovery

http://www.yagnasys.com