Académique Documents
Professionnel Documents
Culture Documents
Concepts
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
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
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
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?
Bus
Components
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Big Three
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
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 hotstandby server recovery Emerging communication paradigm
TIB Publisher Subscriber Subscriber ...
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Subject-based Addressing
APP A
publisher
RESTAURANT.DINNER.STARTER.FISH.PLAICE
APP B
APP C
subscriber
RESTAURANT.BREAKFAST.TOAST
RESTAURANT.LUNCH.DRINK.WATER
data
1179 kHz
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
RESTAURANT
RESTAURANT
CAFE
RESTAURANT.LUNCH
...
BREAKFAST LUNCH DINNER
RESTAURANT.BREAKFAST.TOAST
TOAST
DRINK
STARTER
MAIN_COURSE
DESSERT
RESTAURANT.DINNER.STARTER.FISH RESTAURANT.DINNER.DRINK.>
...
FISH
...
...
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
Self-Describing Data
Self-describing Object
CUSTOMER.TELNUM.UPDATE
field name CustNumber field type Integer value 12345678 field name field type value TelNumber Message
subject
data What is your class? What are your attributes? What are their types? What are their values?
field name field type value field name field type value
APP A
APP B
APP C
APP D
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
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
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
10
X.25
v
TIB
IBM MVS Tandem
MAINFRAMES
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
11
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
12
Infrastructure
Application Functionality
C Adapter
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
13
Systematic Integration
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
14
Graceful Migration
Phase 0
Phase 1
Existing Client Existing Client
Phase 2
Phase 3
Existing Client
New Client
New Client
Replaced Client
New Client
Existing Server
Adapter TIB
Replaced Server
TIME
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
15
HOST 1
HOST 2
Communication Daemon
Physical Network
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
16
High-Performance Architecture
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
17
Interaction Models
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
18
Publish/subscribe Interaction
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
19
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
20
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
21
Event-Driven Programming
APP A event
APP B
APP C
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
22
Demand-driven Interaction
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
23
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
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
24
Widely-known and well accepted Excellent exploratory querying and standard transactions
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
25
Event-driven--asynchronous. Demand-driven--synchronous. Event-driven--enables anonymous interaction (allows decoupling). Event-driven--requires less agreement on the data.
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
26
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
27
Subject-based Addressing
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
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
28
Location Transparency
De-couple front-end from back-end Develop generic distributed applications
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
29
Self-describing Data
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
30
Self-Describing Data II
Self-describing Object
CUSTOMER.TELNUM.UPDATE
field name CustNumber field type Integer value 12345678 field name field type value TelNumber Message
subject
data What is your class? What are your attributes? What are their types? What are their values?
field name field type value field name field type value
APP A
APP B
APP C
APP D
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
31
Event-driven Publish/Subscribe
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
32
Event Manager
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.
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
33
Publish/Subscribe features
Broadcast and multicast communication Event-driven by data producer Far less overhead than polling Faster at propagating data changes Location transparency facilitates automatic hotstandby server recovery Emerging communication paradigm
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
34
Reliable Publish/Subscribe
Has the most light-weight protocol for non-critical message delivery Reliable ordered delivery Broadcast to thousands of applications Loss detection with transparent re-transmission
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
35
Certified Publish/Subscribe
Critical ordered message delivery Guaranteed delivery even in case of failures Dynamic discovery broadcast protocols Point-to-point message protocols Automatic recovery protocols
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
36
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
37
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
38
Traditional 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
Client port request Server port
Network
reply
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
39
TIB-based Request/Reply
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
Client request Server Server ...
TIB
reply
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
40
Model-driven Computing
A concept for developing reusable, generic software. Solves a class of problem. Software is tailored by users to meet their specific requirements. Benefits.
Decreased software cost.
re-use of generic components. more tailoring at the user level.
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
41
Model
Generic Application
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
42
Service Disciplines
TIBCOs middleware comes in different flavors In different service levels
reliable guaranteed transactional
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
43
Reliable Publish/Subscribe
Reliable transport Loss detection with transparent retransmission
Publisher Publisher Subscriber
Broadcast and multicast to multiple clients (N of N) Fine-grain filtering of data Ordered delivery
TIB
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
44
Guaranteed Publish/Subscribe
Guaranteed transport Disk or memory logging automatic recovery Broadcast and multicast to multiple clients (N of N) Fine-grain filtering of data Ordered delivery
TIB Publisher Subscriber
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.
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
45
Queued Publish/Subscribe
Multiple publishers and subscribers Exactly one recipient (1 of N) Guaranteed delivery Automatic recovery Load balancing Ordered delivery
TIB Publisher Subscriber Subscriber
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
46
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
Publisher
RVTX Node
Subscriber
Log
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
47
TIB1
RVRD RVRD
TIB2
Receiver process
TIB4
other TIBs...
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
48
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.
49
2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.