Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

51
Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA The Rules of SOA

Transcript of Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Page 1: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Jeff GenenderPrincipal

A Road to a Successful SOA Implementation

The Rules of SOAThe Rules of SOA

Page 2: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.
Page 3: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

One Trick PonyOne Trick Pony

Page 4: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

JSR 316 - Java EE 6

Apache CXF

One Trick Pony - Jeff GenenderOne Trick Pony - Jeff Genender

Page 5: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Token Marketing Blurb - Token Marketing Blurb - basementcoders.combasementcoders.com

Twitter: @bcodershttp://www.basementcoders.com

Page 6: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Rules of EngagementRules of Engagement

Page 7: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

COME UM UPUM HARD WAYCOME UM UPUM HARD WAY

Page 8: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.
Page 9: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.
Page 10: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

ClientClient’’s Mess (My real 1 trick pony)s Mess (My real 1 trick pony)

Page 11: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #1 - Think BigTip #1 - Think BigWhere am I going?Where am I going?

Page 12: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #1 - Start SmallTip #1 - Start Small

Page 13: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

What we did...What we did...

Page 14: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

And if you donAnd if you don’’t...t...

Page 15: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

And if you donAnd if you don’’t...t...

$$$$$$

Page 16: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #2 - SOA GovernanceTip #2 - SOA GovernanceWho are these guys?Who are these guys?

Page 17: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

And if you donAnd if you don’’t...t...

Page 18: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #3 - Tools - Choose your weapons, Tip #3 - Tools - Choose your weapons, govern themgovern themWhatWhat’’s this? Where am I going?s this? Where am I going?

Page 19: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

A. DonA. Don’’t use a sledge hammer for a nailt use a sledge hammer for a nail

Page 20: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

A. DonA. Don’’t use a sledge hammer for a nailt use a sledge hammer for a nail

Locking into one technology does not fix all problems• Use WS where you want but don’t force everyone...

• Misnomer WS != SOA. WS is a component of SOA.

Bad

Good

Page 21: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

B. Consider an Enterprise Service Bus B. Consider an Enterprise Service Bus (ESB)(ESB)

Page 22: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

B. Consider an Enterprise Service Bus B. Consider an Enterprise Service Bus (ESB) - Cont(ESB) - Cont

Page 23: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

B. Consider an Enterprise Service Bus B. Consider an Enterprise Service Bus (ESB) - Cont(ESB) - Cont

Normalized Messaging• Components speak with each other in one language

Pluggable components• Use any component or technology

• Much more flexible to get components talking to each other

Message Oriented Middleware (MOM)• Reliable messaging based on JMS

Orchestration• Workflow

• Transactionality

• Routing

Page 24: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

C. Consider Open Source PlatformsC. Consider Open Source Platforms

Just as good as the commercial stuff

ESBs/SOA Platforms• Apache ServiceMix

• Apache Camel

• Apache Tuscany

• Apache Synapse

• OpenESB

• Mule

• FuseSource FUSE

Page 25: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #4 - Know thy basic SOA PatternsTip #4 - Know thy basic SOA Patterns

http://www.soapatterns.org

http://www.eaipatterns.com

http://refcardz.dzone.com/refcardz/soa-patterns

WhatWhat’’s this? Where am I going?s this? Where am I going?

Page 26: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #4 - Know thy basic SOA PatternsTip #4 - Know thy basic SOA Patterns

AggregatorAggregator

ServiceBusServiceBus

Dynamic RoutingDynamic Routing

Event Driven ConsumerEvent Driven Consumer

Pipe/FilterPipe/Filter

RouterRouter

Translator/TransformerTranslator/Transformer

Page 27: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

AggregatorAggregator

Page 28: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

ServiceBus/Messaging PatternServiceBus/Messaging Pattern

Page 29: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Dynamic RoutingDynamic Routing

Page 30: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Event Driven ConsumerEvent Driven Consumer

Page 31: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Pipe/FilterPipe/Filter

Page 32: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

RouterRouter

Page 33: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Translator or TransformerTranslator or Transformer

Page 34: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #5 - Version early - Version oftenTip #5 - Version early - Version often

Page 35: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #5 - And if you donTip #5 - And if you don’’t version...t version...

MARSHALING EXCEPTION

Page 36: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Are these lines sloped or parallel?Are these lines sloped or parallel?Tip #6 - Be as Asynchronous as PossibleTip #6 - Be as Asynchronous as Possible

Page 37: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #6 - Be as Asynchronous as PossibleTip #6 - Be as Asynchronous as Possible

Page 38: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #6 - And if you donTip #6 - And if you don’’t...t...

Page 39: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #7 - Watch your XML/SOAP UseTip #7 - Watch your XML/SOAP Use

I LOVE SOAP!

I LOVE XML!

WhatWhat’’s this? Where am I going?s this? Where am I going?

Page 40: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #7 - And if you use too much XML...Tip #7 - And if you use too much XML...

Page 41: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #8 - Design with the right granularityTip #8 - Design with the right granularityWhatWhat’’s this? Where am I going?s this? Where am I going?

Page 42: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #8 - Design with the right granularityTip #8 - Design with the right granularity

Page 43: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #8 - And if you donTip #8 - And if you don’’t...t...

Page 44: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #8 - The Granularity Caveat - The Uber Tip #8 - The Granularity Caveat - The Uber ServiceService

Page 45: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #9 - Point to Point is Bad, Bad, BadTip #9 - Point to Point is Bad, Bad, BadWhatWhat’’s this? Where am I going?s this? Where am I going?

Page 46: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #9 - Point to Point is Bad, Bad, BadTip #9 - Point to Point is Bad, Bad, Bad

Page 47: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #9 - And if you donTip #9 - And if you don’’t...t...

Page 48: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #10 - There is no Tip #10 - There is no ““oneone”” right way right wayWhatWhat’’s this? Where am I going?s this? Where am I going?

Page 49: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Tip #10 - And if you donTip #10 - And if you don’’t...t...

Page 50: Jeff Genender Principal A Road to a Successful SOA Implementation The Rules of SOA.

Questions?Questions?