21
Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Embed Size (px)

DESCRIPTION

What is middleware for? ● Transaction technology – as used in the implementation of business processes and services ● Information retrieval technology – as used to support management oversight and analysis of business performance ● Collaborative technology – for helping people work together, , discussion forum, wiki ● Internal IT service technology – software distribution, remote system operation

Citation preview

Page 1: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Chapter 6: Using Middleware

TextbookIT Architectures and Middleware, Second Edition

Chris Britton and Peter Bye

AIT 600Jeff Schmitt

October 20, 2008

Page 2: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Questions to explore

● What is middleware for?● How do we split application functionality among

the tiers?● How do we assemble applications into a wider

architecture?

Page 3: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

What is middleware for?

● Transaction technology – as used in the implementation of business processes and services

● Information retrieval technology – as used to support management oversight and analysis of business performance

● Collaborative technology – for helping people work together, email, discussion forum, wiki

● Internal IT service technology – software distribution, remote system operation

Page 4: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 5: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 6: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

How do we split application functionality among the tiers?

● How do we split

Page 7: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 8: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 9: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Distributed Architecture patterns

● How do we assemble applications into a wider architecture? Middleware bus (or ring) – tightly coupled Hub and spoke – medium coupling Loosely coupled – as in Web Services No plan – ad hoc – solve each crisis as it occurs

Page 10: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Middleware Bus● Primary aim: separate presentation channels

from the business services● Advantages

Fast – network hardware and software tailored for production workload

Secure – barriers against breaking Flexible – new channels added easily

● High-discipline architecture strict standards for service interface, security,

system management and failover

Page 11: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 12: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 13: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Hub Architecture● Messages go through hub giving opportunities for

functionality Reouting the message Multicasting the message (broadcast) Reformatting or splitting the message Adding information to the message Perform workflow rules Monitor message flow

● Useful in bridging networks, and in legacy systems where you cannot adapt the application

Page 14: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 15: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Hub Disadvantages

● Another link in the chain● Another point of failure● Potential bottleneck● Need backup hub and failsafe software

Page 16: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008
Page 17: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Web Services Architecture● Loosely coupled distributed system● Dependencies between distributed programs

Protocol Configuration Message format Message semantics Session state Security Business process Business object

Page 18: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Dimensions of coupling dependencies

● Technological dimension Protocol Configuration Message format

● Application dimension Message semantics Session state

● Wider concerns Security Business process Business object

Page 19: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Summary

● Communication among applications Real-time (request and response) Deferrable (send and forget)

● Business processes, collaboration, intelligence● Tiers – useful concept for program design

Presentation tier – support multiple external channels – clear cut

Processing and data tier – less clear cut delineation

Page 20: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Summary

● Application coupling (loose or tight) has technical dimension and application dimension Technical dimension – example web services Application dimension – example complex dialog to

exchange information● Distributed architecture styles

Middleware bus architecture Hub architecture Web services architecture

Page 21: Chapter 6: Using Middleware Textbook IT Architectures and Middleware, Second Edition Chris Britton and Peter Bye AIT 600 Jeff Schmitt October 20, 2008

Summary● Middleware bus architecture

Tightly coupled Best performance, resiliency and security but difficult to

deploy and change● Hub architecture

Moderately coupled Useful when there is a need to route service requests

or to multicast service requests● Web services architecture

Loosely coupled