overview of esb at azilen tech meetup

31
Enterprise Service Bus @azilentech #AzilenTechMeetup

Upload: azilen-technologies-pvt-ltd

Post on 16-Apr-2017

876 views

Category:

Technology


5 download

TRANSCRIPT

Page 1: Overview of ESB at Azilen Tech Meetup

Enterprise Service Bus @azilentech

#AzilenTechMeetup

Page 2: Overview of ESB at Azilen Tech Meetup

Background

Information – Key to Success but challenges.Distributed data across different systems

Inter organization data dependency

Intra organization data dependency

Page 3: Overview of ESB at Azilen Tech Meetup

EIP-Enterprise Integration Pattern

• This data dependency needs to be resolved• We need a way to make these systems talk to each other• And the HERO is EIP• EIP-”EIP is a set of re-usable design patterns or solutions

which can be used to connect more than two enterprise applications and made them talk to each other and communicate to each other.”

• P2P, File Transfer, Messaging, RPC, Shared DB etc. are an example of EIPs.

• P2P is the most widely used EIP.

Page 4: Overview of ESB at Azilen Tech Meetup

P2P-Point To Point Integration

• Two applications talk to each other directly, no intermediary.• P2P integration is only suitable for very few integration points and there is

no possibility for future expansion. • If there are at least three different integration end-points, and many more

are on the road map, then P2P integration is certainly not an option. • It increases complexity, maintenance and reduces agility and visibility.

Page 5: Overview of ESB at Azilen Tech Meetup

What is an ESB ?

“An enterprise service bus (ESB) is a software architecture model used for designing and implementing communication between mutually interacting

software applications in a service-oriented architecture (SOA).” -Wikipedia

• In nutshell- The enterprise service bus (ESB) is a software infrastructure or architectural pattern that facilitates application integration.

• ESB provides implementations of EIPs and abstracts away all the integration complexity of enterprise application integration

Page 6: Overview of ESB at Azilen Tech Meetup

Why do we need ESB ?

• Business applications are rarely live in isolation. • Users expect instant access to all business functions an enterprise can

offer, which requires different applications to talk to each other.• Fragmented application development languages space

Page 7: Overview of ESB at Azilen Tech Meetup

Fragmented Protocol Space

• Fragmented protocol space applications uses to communicate

Page 8: Overview of ESB at Azilen Tech Meetup

Here it is!

Page 9: Overview of ESB at Azilen Tech Meetup

Advantages of ESB

ESB facilitate two or more applications talking to each other via well defined interface.

To abstract away complexity (Languages / Protocols)

Increased Visibility

Provides loose coupling and flexibility

Provides reliability, Agility, high productivity

Well defined architecture

Easy to on board new systems and integrations

Page 10: Overview of ESB at Azilen Tech Meetup

Advantages of ESB

Easier to migrate legacy systems

Scalable/ Manageable/ stateless

No matter which technologies you have to use, you always do it the same way, i.e. same syntax, same API, same automatic tests. The only difference is the configuration of each endpoint

Page 11: Overview of ESB at Azilen Tech Meetup

Disadvantages of ESB

• Lots of initial overhead• Expertise needs to be built into DevOps teams• Not for everybody (some initial understanding or

development experience required)• Initial learning curve• A new technology and system needs to be maintain

Page 12: Overview of ESB at Azilen Tech Meetup

Secondary duties of ESB

• Monitor and control routing of message exchange between services

• Resolve contention between communicating service components

• Cater for commodity services like event handling, data transformation and mapping, message and event queuing and sequencing, security or exception handling, protocol conversion and enforcing proper quality of communication service

Page 13: Overview of ESB at Azilen Tech Meetup

Capabilities of ESB

Service Invocation

Routing

MessagingComplex

Event Processing

Mediation QoS

Management Agnosticism

Page 14: Overview of ESB at Azilen Tech Meetup

Capabilities of ESB

Security

Transformation(xml, csv, json)

Enrichment Validation

Split and Merge

Page 15: Overview of ESB at Azilen Tech Meetup

Different ESB Frameworks

• There are many different ESB offerings available in both commercial and Open Source license agreement.

• The widely used open source offerings are as below

1. Apache Camel2. Mule ESB 3. JBoss Fuse4. WSO2 ESB5. Spring Integration

Page 16: Overview of ESB at Azilen Tech Meetup

Follows Same Religion

Page 17: Overview of ESB at Azilen Tech Meetup

Comparison Criteria

Page 18: Overview of ESB at Azilen Tech Meetup

Similarities• All these frameworks have many similarities. • All implement the EIPs and offer a consistent model• The only difference is the configuration of each endpoint• Though each framework uses different names, the idea is the same. • For instance, “Camel routes“ are equivalent to “Mule flows“, “Camel components“

are called “adapters“ in Spring Integration.

Page 19: Overview of ESB at Azilen Tech Meetup

Differences

• Very few differences between them• Community support• Tooling• DSL (Domain specific languages)• Popularity• Developer Vs. Designer centric

Page 20: Overview of ESB at Azilen Tech Meetup

What to Focus on?

Page 21: Overview of ESB at Azilen Tech Meetup

Who uses ESB ?

Page 22: Overview of ESB at Azilen Tech Meetup

Million-Dollar Question –When to ESB ?

Page 23: Overview of ESB at Azilen Tech Meetup

Wrong Usage

Page 24: Overview of ESB at Azilen Tech Meetup

Proper Usage

Page 25: Overview of ESB at Azilen Tech Meetup

Please Beware !

• There is no silver bullet, an ESB can also be the wrong choice.• Selecting the right product is essential for your project success.

Page 26: Overview of ESB at Azilen Tech Meetup

Case Study-MyCart

• Order management• Bulk Order management• Shipping Logistics• Customer management• Analytics (Roadmap)• Marketing Campaign (Roadmap)

Page 27: Overview of ESB at Azilen Tech Meetup

Traditional Solution(P2P)

Order ManagementSystem

Bulk Order Management

system

Logistics system

Customer Management

SystemAnalytics System Marketing System

Page 28: Overview of ESB at Azilen Tech Meetup

Solution Using ESB

ESB

Order ManagementSystem

Order ManagementSystem

Order ManagementSystem

Customer Management

SystemAnalytics System Marketing System

Page 29: Overview of ESB at Azilen Tech Meetup

Thank You

Page 30: Overview of ESB at Azilen Tech Meetup

Twitter Contest !

Which license does Mule ESB offers to open source community ?

Common Public Attribution License (CPAL)

@azilentech

#AzilenTechMeetup

Page 31: Overview of ESB at Azilen Tech Meetup