The Enterprise Service Bus - Yale University

Transcription

The Enterprise Service Bus aspart of an integration strategyESB FROM A TECHNICAL STANDPOINT: WHATIS ITS FUNCTION AND WHERE DOES IT FIT?SUSAN BRAMHALLJUNE 17, 2013

What I’ll cover SOA ESB architecture The Yale SOA / ESB project

Crazy Quilt of Integration Complexity

It only gets worse

Integration Use Cases

Enterprise Integration PatternsEnterprise Integration Patterns:Designing, Building, and DeployingMessaging SolutionsbyGregor Hohpe,Bobby Woolf,Bobby chnologymanagement/0321200683

Integration Styles: File Transfer

Integration Styles: Shared Database

Integration Styles: Remote Procedure Call

Identity Sharing the New WayStudentsFaculty & StaffIdentity Correction ToolDirectoryHRHPSMNet IDSystem10

The problem with tight couplingAssumptions Platform technology— internal representations of numbers andobjectsLocation— hardcoded machine addressesTime— all components have to be available at the same timeData format— the list of parameters and their types must match

What is SOA Service-Oriented Architecture is a softwarearchitecture pattern in which applications or systemsare constructed from underlying (and usuallydistributed) software services that conform to aspecific set of characteristics. Loosely coupledAbstract & Location transparentContract basedReusable & ComposableDiscoverableStateless

Integration Styles: Messaging

Loose Coupling Consumers are minimally impacted by changes tothat service Implementation can changeLocation can changeNew features may be added

What is an ESB? An Enterprise Service Bus is a runtime platform tohelp manage the operation of SOA services Must handle complex enterprise integrationscenarios involving multiple (and often legacy)platforms, protocols and security models

What is Yale doing about SOA? SOA Domain Model Enterprise integration strategy

Domain Model An Exampleof a domainmodel thatmodelsstudent andcourses

Basic Message-Based Integration

What is Yale doing with the ESB ESB - Fuse Open source stack with huge adoption Complex & mature Many Camel EIP components – no java required Development environment for customcomponents Templates for Yale

The Open Source Fuse ESB

Added value - Security

Law Bench on the ESBLawApplicationRequest forcourse data overhttpOSGi serviceusing ApacheCXFJPALawApplicationXMLmessageobjectRequest for student dataSecuritypoliciesauthN / authZOSGi serviceusing bject

Archer on the ESBFuseschedulerTime to push dataSOAP APIMessage queueListener pullsdivs and orgsFrom HRSQL queryHRListener pulls divdata for ArcherXMLmessageobjectMessage queue

Added value - Filtering

Added value - enrichment

Simple Camel Example

Custom Components when NecessaryData available toother subscribersA data changehappened in theIAM VirtualDirectory ServerMessagewith dataissuedDataconverted toArcherspecificformatCustom ProcessSends data usingvendor providedAPI (SOAP)Pushed dataIs availableon hostedapplication

We are basing our work on. An initial Reference architecture based on Recommendations from Jamie Goodyear, a founderand committer to the Apache projects that make upthe Fuse suite.

The Yale SOA / ESB project . Crazy Quilt of Integration Complexity . It only gets worse . Integration Use Cases . Gregor Hohpe, Bobby Woolf, Bobby Woolf . Integration Styles: File Transfer . Integration Styles: Shared Database . Integration Styles: Remote Procedure Call . 10 . Identity Sharing