SOA Patterns

Load balancer. Web. Server. (IIS/Apache ... Load balancer. Firewall ... Service. Instance. Edge. Windows Host. NIC Driver. TCP/IP. Windows Kernel. NIC. Real IP ...
5MB Sizes 4 Downloads 203 Views
© 2008 Studio MikMik

SOA Patterns

Arnon Rotem-Gal-Oz

© Todd Bonita 2009

BEFORE WE BEGIN

SOA Adheres to

Policy

Binds to

End Point

governed by

Exposes

Serves Service Consumer

Understands

Contracts

implements

Service

describes Key Component

Sends/Receives

Messages

Sends/Receives

Relation

Distributed Agents

Pipes and Filters

Layered System

Client Server

Stateless Comm.

SOA

SOA is derived from other styles

SOA vs. REST Distributed Agents

Pipes and Filters

Layered System

Client Server

Stateless Comm.

SOA

Replicated Repository

Uniform Interface

Cacheable

REST

Virtual Machine

Code On Demand

SOA also means challenges…

…and patterns can help mitigate them Virtual Endpoint

Service Instance Workflodize Edge Component Gridable Service Inversion of Communications

Blogjecting Watchdog Orchestrated Choreography Transactable Service

Request/Reply

Composite Frontend Identity Provider

Parallel Pipelines

Service Firewall Decoupled Invocation

Saga Client/Server/Service

Aggregated Reporting Service Monitor

XSIGHTS, MEET AUDIENCE AUDIENCE, XSIGHTS

Mobile Integration Services Advertizing Management

Applications

Resources Reporting Editorial Integration

Advertisers Integration

Mobile Integration

Services Monitoring

3G Video Calls

Usage Datmart

Billing

Acquisition

3rd parties

Ad Management

Applications Interactions

Reporting Data mining & Statistics

Dedicated Client

MMS

Targeted Advertizing

branding

Campaign Mgmt.

Resources Paper Links

Interactions Editorial Integration

Reports Data Interfaces

Web Front-end

Reference Data Advertisers Integration

Publishing tools integration

Interaction Designer

Load balancer

Smart phones

Web Server

Web Server

(IIS/Apache

(IIS/Apache

MMS Gateway

DMZ

3G Gateway

3G Gateway

Camera Phones

Firewall Load balancer

App Server

App Server

App Server

App Server

App Server

App Server

App Server

Operational Firewall

NMS

BI & Reporting

Links Registeration

DB

Datamart

DB

Links

usage

References

Sync. Server

Paper Editor

Firewall

Backend

Admin Console

Web Server (IIS/Apache Advertizing clients

DMZ

ServiceHost WD Agent

Edge

Business Logic

Resource Allocator

Event Broker

The Service host sets up the common components and services for each Component

namespace xsights.Infrastructure.ResourceHost.Interfaces { public interface IResourceHost : IDisposable { ICache Cache { get; } Uri ResourceUri { get; } IPAddress LocalIP { get; }

}

IWatchDogProxy WatchDogProxy { get;} IResourceAllocator ResourceAllocator { get; } ImEventBroker EventBroker { get; } void Open(); void Open(TimeSpan timeout); void C