Presentation is loading. Please wait.

Presentation is loading. Please wait.

Defining a Pragmatic and Practical SOA Focused Enterprise Architecture

Similar presentations


Presentation on theme: "Defining a Pragmatic and Practical SOA Focused Enterprise Architecture"— Presentation transcript:

1 Defining a Pragmatic and Practical SOA Focused Enterprise Architecture
Asanka Abeysinghe WSO2, Inc Vice President, Solutions Architecture Chintana Wilamuna WSO2, Inc Architect, Solutions Architecture

2 Asanka Abeysinghe @asankama http://asanka.abeysinghe.org
asankaa AT wso2 DOT com

3 Chintana Wilamuna @std_err chintana AT wso2 DOT com

4 Goals of the Day Understand the relationship between EA and SOA**
How SOA helps to resolve EA challenges ** Mapping EA patterns to SOA Identify reference architecture(s) Fill the reference architecture(s) using WSO2 products Use a pragmatic approach to solution architecture Identify a real-world problem(s) and architect a solution from scratch ** will discuss on Thursday, Track-2, 11AM-11:45 “Establishing an SOA focused EA”

5 Agenda Intro Reference Architecture for EA Patterns
Gateway Façade WOA (WEB Oriented Architecture) Reference Architecture for EA Patterns cont.. EDA (Event Driven Architecture) Master Data Hub (MDM, ETL) Entitlement Break Lab exercise (Solution building)*** Q&A *** identify your use-cases

6 Format Pattern overview Problem space Reference Architecture
Technical Problem Business Problem (use-cases) Reference Architecture Vendor neutral with WSO2 Stack

7 Pattern : Gateway An architecture layer encapsulates access to internal/external systems/resources Single interface to; Route Validate Secure Govern Monitor messages Related pattern – Façade

8 Gateway

9 SOA Gateway

10 SOA Gateway - Extended

11 Gateway using WSO2

12 Gateway using WSO2 cont.

13 Gateway Implementation Patterns : Centralized

14 Gateway Implementation Patterns : Federated

15 Federation and Multi-tenancy

16 Gateway Implementation Patterns : Multi-tenanted

17 Gateway - sub-pattern : Façade
Service Façade API Façade Service Granularity Fine-grained to Coarse-grained Binding Industry standards

18 Gateway Demo : after the break

19 MVC (Model View Controller)
Business logic in WEB and backend layer WEB layer tight-coupled with backend

20 WOA (Web Oriented Architecture)
Bring SOA principles to WEB programming Loosely-coupled Light-weight web apps (zero business logic) Light-weight protocols (REST, JSON, POX, protobuf) WEB API design

21 WOA cont.

22 WOA using WSO2

23 Event Driven Architecture - EDA
Event  Channel  Consumer Create/emit event (emitter/agent) Transfer event (HTTP, File, etc…) Consume event Patterns Publish/Subscribe Store and forward Pont-to-point Request-reply

24 Traditional EDA Event Generator Event Generator Event Generator
Channel Event Consumer Event Consumer Event Consumer

25 EDA with SOA Event Generator Event Generator Message Broker BAM CEP
Event Bus / Channel Event Consumer Event Consumer Event Consumer

26 EDA+SOA with WSO2 Event Generator Event Generator Message Broker BAM
CEP Event Bus / Channel Event Consumer Event Consumer

27 Event bus / Channel Usually an enterprise service bus
Emitters and consumers connected through the bus Different interfaces / message formats Generating events from the bus itself Integrating non-event based systems WSO2 ESB WS-Eventing based interactions / integrations Transforming to and from WS-Events and general triggers Reliable delivery with a JMS broker

28 Message Broker Supporting different messaging patterns
Queue based and pub/sub Reliable delivery of messages/events WSO2 Message Broker Scalable, distributed message storage based on Cassandra Distributed queuing

29 Business Activity Monitoring
Monitoring end-to-end business message flow Identifying/collecting/tracing business transactions WSO2 BAM Scalable analytics using Hadoop Scalable data storage model, Cassandra Flexible deployment model (external Hadoop cluster and external Cassandra ring) Intuitive and powerful dashboarding

30 Complex Event Processing
Reading multiple continuous event streams Identify different patterns from these events WSO2 CEP High performant event processing engine Extensible query language, Siddhi

31 Master Data Management - MDM
ETL (extract / transform / load) Secure transmission of data Consistent updates Message transformation Aggregation/enrichment of data Data mapping Multiple protocols Multiple message formats

32 MDM problem System A DS 3 DS 1 ETL Master Data DS 2 DS 4 Legacy System
Data sources DS 3 DS 1 ETL Master Data DS 2 DS 4 Data sources Legacy System

33 Configuration Repository
MDM architecture Access API Configuration Repository Monitoring Mediate Transform Filter Validate Data service Transports DB Downstream Apps

34 MDM with WSO2 Web service Downstream Apps
External / Internal consumers SOAP Mediate Transform Filter Validate Web service Transports SQL Downstream Apps DB

35 MDM with WSO2 Consistent data API to interact with master repo
Streamlined integration of downstream apps ETL from different sources/protocols/messages Centralized configuration repository Secured/metered/throttled API for external and internal consumers Monitoring (ETL process, data access, API invocations etc…) Pluggable and independently scalable components

36 MDM with WSO2 WSO2 ESB WSO2 Data Services
Multiple protocols / SOAP, JSON, CSV, Copybook, Fixed length Easy extension model : transports, message builders, custom mediators Stream processing on large files (extract) WSO2 Data Services API for data access (relational / NoSQL) Declarative definition / Web interface / DeveloperStudio Security (WS-Security) QoS (caching, throttling, etc…)

37 MDM with WSO2 WSO2 G-Reg WSO2 API Manager WSO2 BAM
Configuration repository Artifact governance using Governance Framework WSO2 API Manager Consumer API (JSON, OAuth2, role based access) Metered and monitored WSO2 BAM Monitor ETL process (# records processed, successful/failure rate) : real time alerting after CEP integration Operational, admin, C level dashboards

38 Entitlement Once users authenticate, making authorization decisions
Who can access what (based on the user/role) What web service? What operation? Typically authorization logic embedded in business functions/services Implementing for each and every services Policy based approach. Reusing the same authorization policy

39 Entitlement architecture
Policy Decision Point User Attribute Finder Resource Finder Policy Finder

40 Entitlement with WSO2 Policy Enforcement Entitlement Service
Policy Decision Point Decision Cache User Attribute Finder Resource Finder Policy Finder Attribute Cache Resource Cache Policy Cache

41 Entitlement with WSO2 Decoupled authorization logic
Fine grained authorization policies using XACML Authorization calls via SOAP, Thrift and WS-XACML Authorization decision caching Attributes / Resources / Policies Pluggable user repositories (Active Directory, LDAP, DB)

42 Entitlement with WSO2 Entitlement service (SOAP / WS-SOAP / Thrift). REST interface after JACML Pluggable PIP (policy information point) attribute finders Default attribute finders talking to G-Reg (Policy and Resource details) and user repository for user attributes (Active Directory / LDAP etc…) Caching for increased performance

43 Pattern : Gateway Single interface to; Related pattern – Façade Route
Validate Secure Govern Monitor Related pattern – Façade

44


Download ppt "Defining a Pragmatic and Practical SOA Focused Enterprise Architecture"

Similar presentations


Ads by Google