58
Professionaliteit door kwaliteit Towards Distributed Information Access Victor de Graaff November 18 th , 2009 Towards Distributed Information Access Possibilities and Implementation Victor de Graaff November 18 th 2009

Presentation Master thesis defense

Embed Size (px)

DESCRIPTION

Sorry, SlideShare shows some of the bullet points and numbering elements different from what they should be.

Citation preview

Page 1: Presentation Master thesis defense

Professionaliteit door kwaliteit

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Towards Distributed Information Access

Possibilities and Implementation

Victor de Graaff

November 18th 2009

Page 2: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Master thesis defense

Towards Distributed Information Access

Possibilities and Implementation

2

Victor de GraaffUniversity of TwenteComputer ScienceSoftware Engineeringdr. Luís Ferreira Piresdr. ir. Marten van Sinderening. Gerke Stam, TSi Solutions

Student:University:Master:Track:Graduation Committee:

Page 3: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

1. Motivation

2. Objectives

3. Approach

4. Overview

3

Page 4: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

What is an information broker?

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

4

Page 5: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

What is an information broker?

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

5

Page 6: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Current situation

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

6

Page 7: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

What is an information broker?

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

7

Page 8: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Main objective

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

To determine the most suitable architecture and technology to realize distributed access on real-time to

information on products.

Architecture Structure of the system.

Technology Software to support that structure.

Distributed Information comes from different places.

Real-time Information comes at the time it is needed.

8

Page 9: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Sub-objectives

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

To reach our main objective:1. To provide an overview of existing integration

technologies;

2. To provide an overview of architectural options to use these integration technologies.

To validate our main objective:1. To provide an overview of existing implementations of

the integration technologies and determine the most suitable one;

2. To create and test a prototype which provides an example implementation for the proposed architecture.

9

Page 10: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Approach

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Step-by-step:

1. Requirements analysis

2. Literature survey of existing technologies

3. Identification of possible architectures

4. Comparison of possible architectures

5. Literature survey of existing implementations

6. Selection of the best implementation for this purpose

7. Implementation and testing

10

Page 11: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Overview

Introduction Motivation Objectives Approach Overview

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

11

Page 12: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Requirements

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

1. Approach

2. Stakeholders

3. Use cases

4. Functional requirements

5. Non-functional requirements

6. Weighting factors

12

Page 13: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Approach (1)

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Input from three sources:

1.Information broker analysis

2.Questionnairea.CTOb.System architectsc.Developers

3.Discussions

13

Page 14: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Approach (2)

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Four steps:

1.Identification of stakeholders

2.Identification of use cases

3.Identification of requirementsa.Functionalb.Non-functional

4.Assignment of weight factors

14

Page 15: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Stakeholders

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

• Consumers– Travel Agencies– Website developers

• Information broker– Project leaders– System architects– Developers– System administrators

• Producers– Tour operators– Insurance companies– Payment service providers– etc.

15

Page 16: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Use cases

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

16

Producer

Consumerretrieve available productsfor one provider

Information Broker

retrieve available information on products for several providers

request info

request info

provide info purchase/cancel (combined) product

initiate

direct to

corresponding producer(s)

handle purchase/cancellation

configure which producers are available

configure

configure which consumers are allowed to use/offer products

configure

retrieve information on previous product purchase

request info

request info

provide/enrich info

Page 17: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Functional requirements

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

1. Generic transportation of messagesa. Support to multiple transportsb. Support to multiple protocolsc. Transparent message exchange

2. Add existing applications easilya. External applicationsb. In-house applications

3. Routing

4. Global configuration

5. Security

17

Page 18: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Non-functional requirements

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

1. Open source

2. Ability to scale out

3. Ability to upgrade the system without a complete shutdown

4. Reliable messaging

5. Independent of implementation language

6. Operation time

7. Message speed

8. Fail fast adequacy

18

Page 19: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Weighting factors (1)

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

19

1. Generic transportation of messagesa. Support to multiple transportsb. Support to multiple protocolsc. Transparent message exchange

2. Add existing applications easilya. External applicationsb. In-house applications

3. Routing

4. Global configuration

5. Security

444

53

4

1

5

Page 20: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Weighting factors (2)

Introduction

Requirements Approach Stakeholders Use cases Functional requirements Non-functional requirements Weighting factors

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

20

1. Open source

2. Scale out

3. Upgrade without a complete shutdown

4. Reliable messaging

5. Independent of impl. language

6. Operation time

7. Message speed

8. Fail fast adequacy

4

5

4

3

5

4

4

3

Page 21: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Comparison of Integration Technologies

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

1. Approach

2. Point-to-Point

3. Hub-and-Spoke

4. Enterprise Message Bus

5. Enterprise Service Bus

6. Conclusion

2121

Page 22: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Approach

22

C2C1

B2B1

A2A1

Page 23: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Point-to-Point integration

23

C2C1

B2B1

A2A1

Page 24: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

C2C1

B2B1

A2A1

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and- Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Single hub Hub-and-Spoke

24

N

Page 25: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and- Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Multi hub Hub-and-Spoke

25

C2C1

B2B1

A2A1

Page 26: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

C2C1

B2B1

A2A1

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Enterprise Message Bus

26

EMB

Adapter

A A

A

A A

A

A

A

Page 27: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

ICIC

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Enterprise Service Bus

27

C2C1

B2B1

A2A1

ESB

IC

Intelligent Connector

ICIC

ICIC

ICIC ICIC

ICIC

Page 28: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies Approach Point-to-Point Hub-and-Spoke EMB ESB Conclusion

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks

Conclusion

28

C2C1

B2B1

A2A1

C2C1

B2B1

A2A1

N

C2C1

B2B1

A2A1

EMBA A

AA

AA

C2C1

B2B1

A2A1

ESB

Enterprise Message Bus Enterprise Service Bus

Point-to-Point Hub-and-Spoke

IC

IC

ICIC

IC

IC

Page 29: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Application Integration Architectures

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

1. Hub-and-Spoke Architecture

2. EMB Architectures

3. ESB Architectures

4. Conclusion

29

Page 30: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Consumer B

Consumer C

Consumer A

Consumers

Producer A

Producer B

Producer C

Producers

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and- Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

Hub-and-Spoke Architecture

30

Information Broker

Services

Page 31: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Consumer B

Consumer C

Consumer A

Consumers

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

EMB Architectures (1)

31

Load BalancerSe

rvic

es

Producer A

Producer B

Producer C

EMB in combination with a load balancer:

Ente

rpris

e M

essa

ge B

us

Producers Information Broker

Page 32: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Ente

rpris

e M

essa

ge B

usProducer A

Producer B

Producer C

Consumer B

Consumer C

Consumer A

ConsumersProducers Information Broker

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

EMB Architectures (2)

32

Service 3

Service 2

Service 1

Two EMBs:

Ente

rpris

e M

essa

ge B

us

Page 33: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

EMB Architectures (3)

33

Producers

Information Broker

Producer A Producer B Producer C Consumer A Consumer B Consumer C

Consumers

Service 1 Service 2 Service 3

One EMB:

Enterprise Message Bus

Page 34: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

ESB Architectures (1)

34

Consumer B

Consumer C

Consumer A

Consumers

Load BalancerSe

rvic

es

Producer A

Producer B

Producer C

Ente

rpris

e Se

rvic

e Bu

s

Producers Information Broker

ESB in combination with a load balancer:

Page 35: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Ente

rpris

e Se

rvic

e Bu

s

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

ESB Architectures (2)

35

Producer A

Producer B

Producer C

Consumer B

Consumer C

Consumer A

ConsumersProducers Information Broker

Service 3

Service 2

Service 1

Ente

rpris

e Se

rvic

e Bu

s

Two ESBs:

Page 36: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

ESB Architectures (3)

36

Producers

Information Broker

Producer A Producer B Producer C Consumer A Consumer B Consumer C

Consumers

Service 1 Service 2 Service 3

Enterprise Service Bus

One ESB:

Page 37: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

ESB with one bus.

Advantages over EMB: Transparent message exchange Easy addition of external applications Resilience to changes

Additional advantages over hub-and-spoke: Active open source projects Scaling out capabilities Upgrading of system without shutdown

Conclusion (1)

37

Page 38: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures Hub-and-Spoke EMB ESB Conclusion

Choosing an Implementation

Proof of Concept

Final Remarks

Conclusion (2)

ESB with one bus.

Advantage over ESB with two buses:• Easy addition of internal applications

Advantage over ESB with a load balancer:• Easy addition of external applications

38

Page 39: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Choosing an Implementation

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison

Proof of Concept

Final Remarks

1. Approach

2. Mule

3. ServiceMix

4. OpenESB

5. Comparison

39

Page 40: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Approach

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison

Proof of Concept

Final Remarks

Analysis of three ESB implementations:

1. Tool support2. Components3. Hello World example4. Open requirements:

a. Global configurationb. Message speedc. Fail fast adequacy

40

Page 41: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Mule

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison

Proof of Concept

Final Remarks

Decent tool support Mule IDE 2.0 Use of XML Schemas Lack of visual tools

More than sufficient components

Simple to create Hello World example

Open requirements: Global configuration through Mule Galaxy Claimed to perform better than other ESBs Failure behaviour can be configured

41

Page 42: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

ServiceMix

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison

Proof of Concept

Final Remarks

42

No specific tool support Use of standards

More than sufficient components

Very hard to create Hello World example Extensive use of Maven Examples in standard distribution

Open requirements: No global configuration application Worst performance of the three Apache Camel for process orchestration

Page 43: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

OpenESB

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison

Proof of Concept

Final Remarks

43

Very good tool support NetBeans Use of standards Graphical editor for configuration files

More than sufficient components

Many steps to create Hello World example

Open requirements: GlassFish Admin Console Better performance than ServiceMix Apache Camel for process orchestration

Page 44: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Comparison

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation Approach Mule ServiceMix OpenESB Comparison

Proof of Concept

Final Remarks

44

Requirement Weight Mule ServiceMix OpenESB

Global configuration 1 2 0 2

Message speed 4 2 0 1

Fail fast adequacy 3 2 2 2

Total 16 6 12

Page 45: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Proof of Concept

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

1. Problem situation

2. Basics of Mule

3. Configuring Mule

4. Testing environment

5. Conclusion

45

Page 46: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Problem situation (1)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

TSi's TravelSearch:

Offers search functionality to consumers

Searches TSi's own database

Database is updated at steady intervals

46

Page 47: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Problem situation (2)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

Drill-down search functionality:

1. Possible search criteria

2. Collection of search results

3. Specific information of one result

4. Booking code

47

Page 48: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Basics of Mule (1)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

48

Service

Transport Inboundrouter

Component Outboundrouter Transport

Exception listener

Page 49: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Basics of Mule (2)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

49

<<Endpoint>>HTTP

<<Endpoint>>JMS

<<Component>>POJO

Applicationor

component

T

TT

Inbound router Outbound router

The component's response issent to the outbound router

for endpoint dispatching

An inbound event gets routedto the component's entry point

through transformers

The component's response canbe returned to the caller if

the endpoint is synchronous

Applicationor

component

Page 50: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Basics of Mule (3)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

50

<<Endpoint>>HTTP

<<Endpoint>>JMS

<<Component>>POJO

Applicationor

component

Applicationor

component

T

TT

Inbound router Outbound router

Service

Transport Inboundrouter

Component Outboundrouter Transport

Page 51: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Configuring Mule (1)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

51

<<Endpoint>>HTTP

<<Endpoint>>dtsRequests

VM

<<Component>>WSProxyService

POJO

Consumer

ExternalServices

<<Endpoint>>dtsResponses

VM

<<Component>>DTSResponseAgg

POJO

T

T

Main service:

Page 52: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Configuring Mule (2)

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

52

<<Endpoint>>dtsRequests

VM

<<Endpoint>>externalWebservice

HTTP

VMMessage T

<<Endpoint>>dtsResponses

VM

T

External service:

Page 53: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Testing environment

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

Main service supported by: Java transformation SOAP to XML Java response aggregator

External service supported by: XSLT transformations

XML to provider request Provider response to XML

53

Page 54: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Conclusion

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept Problem situation Basics of Mule Configuring Mule Testing environment Conclusion

Final Remarks

54

1 10 100 10000

2000

4000

6000

8000

10000

12000

14000

16000

18000

20000

Concurrent requests

Aver

age

resp

onse

tim

e (m

s)

Page 55: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Final Remarks

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks Conclusions Future research

1. Conclusions

2. Future research

55

Page 56: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Conclusions

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks Conclusions Future research

To determine the most suitable architecture and technology to realize distributed access on real-time to

information on products.

Requirements Four integration technologies Seven possible architectures ESB with one bus

Mule Prototype

56

Page 57: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Future research

Introduction

Requirements

Comparison of Integration Technologies

Application Integration Architectures

Choosing an Implementation

Proof of Concept

Final Remarks Conclusions Future research

Validation under more realistic circumstances

Transformation optimization

ESB performance comparison

57

Page 58: Presentation Master thesis defense

Professionality through quality

Towards Distributed Information AccessVictor de GraaffNovember 18th, 2009

Questions

58