Post on 28-Nov-2014
transcript
© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIBCO Active Enterprise
Concepts
Carmelo Martin
Professional Service Group
2© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
What is the TIB?
An acronym for “The Information Bus”
The TIB is a body of software that facilitates the intelligent movement, organization and integration of data in a distributed environment
It is a plug-and -play Software Bus for information
The TIB embodies two communication concepts:
• Subject-based addressing
• Publish/Subscribe communication model
3© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Bus
Components
The Idea
Consider the proven architecture of a PC or chip.
They use a backplane, or bus approach.
Why not write software in the same way?
4© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Big Three
Publish/Subscribe
Subject Based Addressing
Self Describing Data
5© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Subscriber
TIB
Subscriber ...Publisher
TIB-based Publish/Subscribe
Broadcast or multicast communication
Event-driven by data producer (Publisher)
Far less overhead than when polling
Faster at propagating data changes
Location transparency facilitates automatic hot-standby server recovery
Emerging communication paradigm
6© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
89.3 MHz
1179 kHz
APP A APP CAPP B
RESTAURANT.DINNER.STARTER.FISH.PLAICE
89.3 MHz
data subject name
RESTAURANT.LUNCH.DRINK.WATER
RESTAURANT.BREAKFAST.TOAST
publisher subscriber
Subject-based Addressing
7© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
RESTAURANT
BREAKFAST LUNCH DINNER
STARTER MAIN_COURSE DESSERTDRINKTOAST
FISH
...
......
CAFE
...
“RESTAURANT”
“RESTAURANT.LUNCH”
“RESTAURANT.BREAKFAST.TOAST”
“RESTAURANT.DINNER.STARTER.FISH”
“RESTAURANT.DINNER.DRINK.>”
Subject Name Hierarchy
8© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
What is your class?What are your attributes?What are their types?What are their values?
APP A APP DAPP CAPP B
CUSTOMER.TELNUM.UPDATE
field name CustNumberfield type Integervalue 12345678
field name TelNumberfield type Messagevalue
field name AreaCode.field type Integervalue 415
field name TelNumfield type Integervalue 21392
Self-describing Objectsubject
data
Self-Describing Data
9© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB Benefits
High availability
High fault tolerance
High scaleability
High flexibility
Short time to market
Production strength
Ready for large scale enterprises
10© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB Benefits II
Facilitate information exchange
Facilitate distributed software development
Provide systematic integration
Permit stand-alone operation
Reduce costs, time, and support
• Software maintenance
• System administration
Provide incremental and evolutionary migration path
Enable dynamic integration
11© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
v
TIB
Current System EnvironmentCurrent System Environment TIB System ModelTIB System Model
each systemneeds multipleinterfaces
each systemhas one interface
IBM MVS Tandem
MAINFRAMES
X.25
WorkstationsPCs
Introducing the TIB System Model
12© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Introducing the TIB System Model II
13© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
A BC
B
D
A CApplicationFunctionality
Infrastructure
The Information Bus
plug & playof applications
Adapter
TIB: Off-the-shelf Middleware Communications Infrastructure
14© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Physical Network
The Information Bus
TIBApplication
TIBApplication
TIBApplication
non-TIBApplication
LegacyApplication
Adapter
3rd-PartyApplication
Adapter
Systematic Integration
Adapters integrate legacy or third-party software
15© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
ExistingClient
ExistingClient New
Client
Adapter
TIB
NewClient
ReplacedServer
TIB
Replaced Client
TIB
Phase 0 Phase 1 Phase 2 Phase 3
AdapterExistingServer
ExistingServer
ExistingClient
Adapter
NewClient
ReplacedServer
TIME
Graceful Migration
16© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Physical Network
TIB API
TIB Library
App A
TIB API
TIB Library
App B
Communication Daemon
TIB API
TIB Libary
App C
Communication Daemon
HOST 1HOST 1 HOST 2HOST 2
TIB Process Architecture
18© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Interaction Models
19© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Publish/subscribe Interaction
20© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Event-Driven Interaction: Characteristics
Emerging paradigm
Used for monitoring, change notification, and real-time information exchange
Data exchange initiated by producer (server “push”)
Asynchronous data communication
Supports one-to-many communication
21© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Event-Driven Interaction: Benefits
Communicate changes faster
Excellent real-time data dissemination, data replication, and workflow applications
Information is “pushed” to consumers
Less system overhead and communication than “polling”
Yields more loosely-coupled modules
22© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
APP A APP CAPP B
Applications sit on a ‘river of information’
Arrival of an ‘expected’ message triggers an event
event
Event-Driven Programming
23© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Demand-driven Interaction
24© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Standard client/server computing
Used for decision support and transactions
Data exchange initiated by consumer (client “pull”)
Client must regularly poll server for updates
One-to-one communication model
Demand-driven Interaction: Characteristics
25© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Widely-known and well accepted
Excellent “exploratory” querying and standard transactions
Demand-driven Interaction: Benefits
26© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Event-driven--asynchronous.
Demand-driven--synchronous.
Event-driven--enables anonymous interaction (allows decoupling).
Event-driven--requires less agreement on the data.
Event-driven vs. Demand-driven
27© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB Event-driven Publish/Subscribe
28© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Applications publish data on the TIB under a semantically meaningful subject
Applications subscribe to subjects and receive all data published under those subjects
Subject-based addressing provides location transparency
Subject-based Addressing
29© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
De-couple front-end from back-end
Develop generic distributed applications
Location Transparency
32© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Event-driven Publish/Subscribe
33© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Data-consuming applications register interest in subjects with event manager.
Data-producing applications publish data via event manager under subjects.
Data communicated to subscribing applications.
Application event managers invoke appropriate procedures for processing data.
Event Manager
39© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Client Server
port port
Network
request
reply
Point-to-point communication
Demand-driven communication controlled by client
“Polling” model
Location-dependent: Client usually needs to know which server and port to connect to
If server fails, substantial special processing usually needed in client to effect a switchover to a new server
Most commonly used method today
Traditional Request/Reply
40© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB
...
request
reply
Client ServerServer
Communication driven by client
Asynchronous requests and replies, allows other processing to continue at client and server sides
Location-independent communication
Multiple servers can respond to one request (“Broadcast request/reply”)
Dynamic addition of additional servers
Balancing the workload
Fail-over behaviour of servers for fault tolerance
TIB-based Request/Reply
43© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Service Disciplines
TIBCO’s middleware comes in different flavors
In different service levels• reliable
• guaranteed
• transactional
In different service disciplines• publish/subscribe
• client/server
• multicast
• broadcast
• point-to-point
• queuing
• …
44© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB
SubscriberPublisher Publisher
Reliable Publish/Subscribe
Reliable transport
Loss detection with transparent retransmission
Broadcast and multicast to multiple clients (N of N)
Fine-grain filtering of data
Ordered delivery
45© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB
SubscriberPublisher
Each guaranteed delivery Subscriber has a unique application name. For each subject name being sent, the Publisher maintains a list of the applications which need to receive those messages.
The Publisher dynamically learns of the presence of new subscribers via a transparent TIB discovery protocol.
Guaranteed transport
Disk or memory logging
automatic recovery
Broadcast and multicast to multiple clients (N of N)
Fine-grain filtering of data
Ordered delivery
Guaranteed Publish/Subscribe
46© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB
SubscriberPublisher Subscriber
Queued Publish/Subscribe
Multiple publishers and subscribers
Exactly one recipient (1 of N)
Guaranteed delivery
Automatic recovery
Load balancing
Ordered delivery
47© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Log
SubscriberPublisherRVTXNode
The Information Bus (TIB)
Transactional Publish/Subscribe
Based on fault tolerant asynchronous message delivery
Provides persistent storage of messages
Allows publication or consumption as part of data transaction
Enables enterprise level scaleability of transactions
Operates with or without use of a TP monitor
GUI-based administration tool
LAN and WAN support
48© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
TIB2TIB1
TIBRouterProcess 1
TIBRouterProcess 2
“Sender” process
“Receiver” process
TIB3
TIB4
other TIBs...
TIB5
Wide AreaNetwork
WAN: TIB Router
RVRD RVRD
49© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Summary:Supporting the TIB Objectives
distributed application development
software evolution & maintenance
provide path for systematic integration
facilitate data exchange
dynamic information modelling
self-describing data
platform-independence
high-level system model
model-driven design
rapid development environment
anonymous data production & consumption
subject-based addressing
encapsulation
dynamic binding
TIB Feature
Objective
© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Enabling the globalEvent-Driven Enterprise