Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

27
Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak

Transcript of Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Page 1: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Client Server TechnologiesMiddleware Technologies

Ganesh PanchanathanAlex Verstak

Page 2: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Overview Ganesh

Client/Server technologies Middleware

Alex DirectExchange Sequoia 2000 3-Tier Architecture on the Grid

Page 3: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Computing models Terminal host model

File sharing model Client/Server model Peer to Peer model

Page 4: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Client/Server model

Client/server model is a concept for describingcommunications between computing

processesthat are classified as service consumers

(clients)and service providers (servers).

2 Tier 3 Tier N Tier

Page 5: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Two Tier C/S Architecture

Layers Clients Servers

Functionalities User Interface – Client Business Logic – Client (Server??) Database management – Server

Page 6: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

3 Tier C/S Architecture Presentation Tier Business Tier Database Tier

Page 7: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

2 Tier vs. 3 Tier Modularity Change management Reuse Performance Scalability Multiple data sources ????

Page 8: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Example N-Tier Architecture

J2EE Application Model

Page 9: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Middleware

Middleware is a class of softwaretechnologies designed to help

managethe complexity and heterogeneityinherent in distributed systems.

Page 10: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Middleware

Page 11: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Middleware

Enable multiple processes interact across a network

Between Apps and OS/Network services

More functional API for: Heterogeneity Location transparency Reliability Scalability

Page 12: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Types of middleware

Middleware can take the following forms:

Remote procedure call Object request broker Transaction Processing monitor Message oriented middleware

Page 13: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Transaction

A Transaction means a sequence ofinformation exchange and related

work(such as database updating) which istreated as an unit for the purposes ofsatisfying a request and ensuringdatabase integrity.

Page 14: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Examples of transactions

Purchase online using credit card Withdraw money from ATM Electronic funds transfer Book an airline ticket Ordering in Inventory management Billing for phone calls

Page 15: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Transactional Integrity - ACID

Atomicity Trans. must be done or undone

completely Consistency

One consistent state to another Isolation

Each trans. must be independent of others Durability

Completed transactions are permanent

Page 16: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Transaction Processing MonitorMonitors a transaction as it passesthrough the different stages to

Guarantee integrity of transaction Runtime resource management

Page 17: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

TP Monitors Clients connect to the TP monitor TP Monitor

Accepts transactions Queues them Takes responsibility till they are

finished Two types

TP Heavy TP Lite

Page 18: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Features Maps requests to controlled set of

processing routines for performance

Ability to update multiple DBMSs in a single transaction

Connectivity to flat files, non relational DB and legacy data

Prioritize transactions

Page 19: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Vendor Implementations Tuxedo by BEA JTS by Java MTS by Microsoft CICS by IBM

Page 20: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Message Oriented MiddlewareMessaging is an asynchronous method ofpassing information between processes

across network across platform and OS

Page 21: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Message Oriented middleware

Message – Self contained object Message header – address, id, priority Body of the message

Message is intelligent when compared to a transaction in TP systems.

In TP systems Transactions are just packets Intelligence to handle them is in monitor

Page 22: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Message Oriented Middleware

Page 23: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Features of MOM Primarily asynchronous communication Point to multi-point Ordered delivery Receipt notification Handling duplicates Message queues – FIFO or priority basis Messages – persistent or non-persistent

Page 24: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Point to point messaging Client may be only sender, only

receiver or both

Single receiver Use of a message queue

Page 25: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Publish – Subscribe messaging Free sender from knowing the

receivers Messages are categorized on

topics List of senders/receivers is

dynamic

Page 26: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

Vendor Offerings MQSeries by IBM JMS by Java MSMQ by Microsoft DECMessageQ by BEA

Page 27: Client Server Technologies Middleware Technologies Ganesh Panchanathan Alex Verstak.

References Client/Server

http://edocs.bea.com/tuxedo/tux80/atmi/intbas3.htm http://www.sei.cmu.edu/str/descriptions/clientserver.html http://www.sei.cmu.edu/str/descriptions/threetier.html

Middleware http://www.sei.cmu.edu/str/descriptions/middleware.htm http://www.eecs.wsu.edu/~bakken/middleware.pdf http://www.execpc.com/~gopalan/mts/msmq.html http://proj-cmw.web.cern.ch/proj-cmw/workshop/

mom.pdf