40
© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary. TIBCO Active Enterprise Concepts Carmelo Martin Professional Service Group

03 TIB Concepts

Embed Size (px)

Citation preview

Page 1: 03 TIB Concepts

© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

TIBCO Active Enterprise

Concepts

Carmelo Martin

Professional Service Group

Page 2: 03 TIB Concepts

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

Page 3: 03 TIB Concepts

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?

Page 4: 03 TIB Concepts

4© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Big Three

Publish/Subscribe

Subject Based Addressing

Self Describing Data

Page 5: 03 TIB Concepts

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

Page 6: 03 TIB Concepts

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

Page 7: 03 TIB Concepts

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

Page 8: 03 TIB Concepts

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

Page 9: 03 TIB Concepts

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

Page 10: 03 TIB Concepts

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

Page 11: 03 TIB Concepts

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

Page 12: 03 TIB Concepts

12© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Introducing the TIB System Model II

Page 13: 03 TIB Concepts

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

Page 14: 03 TIB Concepts

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

Page 15: 03 TIB Concepts

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

Page 16: 03 TIB Concepts

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

Page 17: 03 TIB Concepts

18© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Interaction Models

Page 18: 03 TIB Concepts

19© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Publish/subscribe Interaction

Page 19: 03 TIB Concepts

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

Page 20: 03 TIB Concepts

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

Page 21: 03 TIB Concepts

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

Page 22: 03 TIB Concepts

23© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Demand-driven Interaction

Page 23: 03 TIB Concepts

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

Page 24: 03 TIB Concepts

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

Page 25: 03 TIB Concepts

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

Page 26: 03 TIB Concepts

27© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

TIB Event-driven Publish/Subscribe

Page 27: 03 TIB Concepts

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

Page 28: 03 TIB Concepts

29© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

De-couple front-end from back-end

Develop generic distributed applications

Location Transparency

Page 29: 03 TIB Concepts

32© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Event-driven Publish/Subscribe

Page 30: 03 TIB Concepts

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

Page 31: 03 TIB Concepts

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

Page 32: 03 TIB Concepts

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

Page 33: 03 TIB Concepts

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

• …

Page 34: 03 TIB Concepts

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

Page 35: 03 TIB Concepts

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

Page 36: 03 TIB Concepts

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

Page 37: 03 TIB Concepts

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

Page 38: 03 TIB Concepts

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

Page 39: 03 TIB Concepts

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

Page 40: 03 TIB Concepts

© 2002 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary.

Enabling the globalEvent-Driven Enterprise