430 likes | 875 Views
BEA Tuxedo™ Introduction and Overview. The History of Tuxedo. TUXEDO - T ransactions in U nix E xtended for D istributed O perations 1984 - Bell Labs, AT & T 1992 - Novell 1996 – BEA, Version 6.5, 7.1, 8.1. TUXEDO introduction. Transaction Middleware Distributed Application Processes
E N D
The History of Tuxedo • TUXEDO - Transactions in Unix Extended for Distributed Operations • 1984 - Bell Labs, AT & T • 1992 - Novell • 1996 – BEA, Version 6.5, 7.1, 8.1
TUXEDO introduction • Transaction Middleware • Distributed Application Processes • Multiple Concurrent DBMS • On-Line Transaction Processing
TUXEDO component • BEA TUXEDO system (/T) • BEA TUXEDO workstation (/WS) • BEA TUXEDO /Q • BEA TUXEDO DOMAIN
Component Component Component DB 3 tiers C/S Architecture Business Logic Middle Ware 3-tiers Client/Server
Server Process Server Process Server Process Bulletin Board Liaison DB 3 tiers C/S With TUXEDO IPC Bulletin Board 3-tiers Client/Server With TUXEDO
Bulletin Board • Translates a service name to a specific server • Provides server location transparency • Supports service name aliases
Bulletin Board liaison • Performs health checks of the system • Handles coordination functions for all system components
Withdraw Withdraw Deposit Bulletin Board Liaison DB BB&BBL IPC Bulletin Board Load Balance
Withdraw Withdraw Deposit Bulletin Board Liaison DB BB&BBL IPC Bulletin Board Fail Over
Withdraw Deposit Bulletin Board Liaison DB BB&BBL IPC Withdraw Bulletin Board New Server started by BBL
Component Component Component TUXEDO Workstation Without Listener/Handler
Component Component Component TUXEDO Workstation With Listener/Handler
Workstation Handler Workstation Handler Workstation Handler Workstation Handler Service Service Service Workstation Listener (WSL) TUXEDO Workstation Workstation Architecture
Workstation Handler Workstation Handler Workstation Handler Workstation Handler Service Service Service Workstation Listener (WSH) TUXEDO Workstation Workstation Architecture
TLOG Transaction Manager Server (TMS) Tuxedo TMS tpbegin(); Application to Transaction Manager Interface (ATMI)
SVC1 DB1 Transaction Manager Server Tuxedo TMS tpbegin(); tpcall(“SVC1”,…); TLOG Application to Transaction Manager Interface (ATMI)
SVC1 SVC2 DB1 DB2 Transaction Manager Server Tuxedo TMS tpbegin(); tpcall(“SVC1”,…); tpcall(“SVC2”,…); TLOG Application to Transaction Manager Interface (ATMI)
SVC1 SVC2 DB1 DB3 Transaction Manager Server Tuxedo TMS tpbegin(); tpcall(“SVC1”,…); tpcall(“SVC2”,…); tpcommit(); TLOG Application to Transaction Manager Interface (ATMI)
Reply Queue Application Code Request Queue ATMI Server Process ATMI Application Code ATMI WSH WSL WSL WSL WSL WSL Tuxedo Architecture BB Servers Services WorkStation Client(WSC) BBL TLOG ULOG MIB Events Administrator Console Command-Line Utilities MIB API Event Broker
Servers Servers Servers Multi Machine Master (DBBL quarries BBL on all machines) Slave 1 DBBL BBL BBL Client Client BB Servers Services BB Servers Services WSH WSL Bridge Bridge WSH WSL Network LAN Slave 2 Bridge WSH WSL Client BB Servers Services BBL
Tuxedo Domain Remote Domain WAN Remote Domain Local Domain … Remote Domain
Servers Servers Servers Tuxedo Domain Local Domain Remote Domain BBL Client BBL Client BB Servers Services BB Servers Services Domain Gateway Domain Gateway WSH WSL WSH WSL Network WAN Remote Domain Domain Gateway WSH WSL BB Servers Services Client BBL
Communication Paradigms • Request/Response • Synchronous • Asynchronous • Pipeline • Nested Service Request • Forwards Service Request • Conversations • Unsolicited messaging(Unsolicited Notification) • Event-based communication • Queue-based communication
Request/Response - Synchronous C S Request Reply tpcall( )
Request/Response - Asynchronous S tpacall() C … tpgetrply() tpacall( ) tpgetrply( )
S S 2 1 Pipeline C Nested Services
S S 2 1 Pipeline C Forward Services
Unsolicited Notification • tpnotify( ) Tpsetunsol() Application Server C Call Back Tpnotify()
Unsolicited Notification tpbroadcast( ) tpbroadcast() C Application Server Call Back C C Tpsetunsol() C Call Back Call Back Call Back
Conversation • tpconnect( ), tpsend( ), tprecv( ) C S
Queued-based • tpenqueue( ) • tpdequeue( ) C C Q
自动转发 Queue-based • tpenqueue( ) • tpdequeue( ) C S Q
EventBroker Subscription Database EventBroker Subscriber Poster Event Event Subscriber . . . Subscriberv tppost( ) tpsubscribe( )
Complicated Communication S tpcall C S tpacall S tpforward tpgetreply S tpreturn
- The End - Thanks