16
MSDN MSDN 中中中中中中中中 中中中中中中中中 SOA SOA 中中中中 中中中中

MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

Embed Size (px)

Citation preview

Page 1: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

MSDN MSDN 中文線上教學課程中文線上教學課程SOA SOA 系列課程系列課程

Page 2: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

簡介服務導向架構簡介服務導向架構SOA OverviewSOA Overview

Page 3: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

什麼是服務導向 什麼是服務導向 (SO)?(SO)?SOASOA 系統四大特性系統四大特性 ::1.1. 明確的系統分界明確的系統分界2.2. 自主性服務自主性服務3.3. 服務之間分享資料綱要服務之間分享資料綱要 (schema)(schema) 與合與合

約約 (contract), (contract), 而非程式類別而非程式類別 (class)(class)4.4. 服務相容性由原則決定服務相容性由原則決定

http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx

Page 4: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

服務與系統的關係服務與系統的關係A service is a program you interact A service is a program you interact with via message exchangeswith via message exchanges Services are built to lastServices are built to last Availability and stability are criticalAvailability and stability are critical

A system is a set of deployed A system is a set of deployed services cooperating in a given taskservices cooperating in a given task Systems are built to changeSystems are built to change Adapt to new services after deploymentAdapt to new services after deployment

Page 5: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

服務無所不在服務無所不在

BusinessNetworks

PersonalNetworks

SocialNetworks

Value ChainNetworks

CustomerRelationship

Networks

ScientificNetworks

GovernmentNetworks

PurchasingPurchasing

FulfillmentFulfillment

HRHR

Page 6: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

PurchasingPurchasing

FulfillmentFulfillment

HRHR

服務無所不在服務無所不在

New YorkNew YorkOperationsOperations

SQL ClusterSQL Cluster

Mobile Mobile Web Web

FrontendFrontend

PurchasingPurchasing

FulfillmentFulfillment

HRHR

Page 7: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

服務無所不在服務無所不在

““Scales Down”Scales Down”to devicesto devices

““Scales In” Scales In” on a machineon a machine

““Scales Up” Scales Up” on large on large systemssystems

““Scales Away” Scales Away” spans organizations spans organizations

and geographiesand geographies

““Scales Out”Scales Out”by adding by adding machinesmachines

Page 8: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

Form-Factor FriendlyForm-Factor Friendly

Flexible, end-to-end Flexible, end-to-end securitysecurity

Unlocks rich Unlocks rich client assetsclient assets

Low-cost devices Low-cost devices via the PC…via the PC…

Empowers users withEmpowers users withhigh-end communicationshigh-end communications

Dynamic protocol Dynamic protocol negotiationnegotiation

Doesn’t require Doesn’t require centralized servicescentralized services

Page 9: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

服務衍進服務衍進

Business BenefitBusiness Benefit

Pre-1990sCustom, staticCustom, staticB2B IntegrationB2B IntegrationCustom, staticCustom, staticB2B IntegrationB2B Integration

Early 1990sApplication integration

technologies appearApplication integration

technologies appear

Late 1990sWeb technologies appear

e.g. HTTP, HTML, XMLWeb technologies appear

e.g. HTTP, HTML, XML

2000+Web Services

Service-OrientedSolutions

Web ServicesService-Oriented

Solutions

Page 10: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

Understanding Tenet 1: Understanding Tenet 1: 明確的系統分界明確的系統分界

Each Service interaction is a boundary Each Service interaction is a boundary crossingcrossing

Crossing service boundaries may have Crossing service boundaries may have costscosts

Service Orientation makes interaction Service Orientation makes interaction formal, intentional, and explicitformal, intentional, and explicit

http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx

Respect my Boundaries.

Page 11: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

Understanding Tenet 2: Understanding Tenet 2: 自主性服務自主性服務

Topology of a system evolves over Topology of a system evolves over time time No presiding authorityNo presiding authorityServices in a system are deployed, Services in a system are deployed, managed, versioned independentlymanaged, versioned independentlyServices expect to run in the wildServices expect to run in the wildServices should not failServices should not fail

http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx

Don’t be Codependent.

Page 12: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

Understanding Tenet 3:Understanding Tenet 3: 服務間共用資料綱要服務間共用資料綱要 (schema)(schema) 與合約與合約 (con(contract), tract), 而非程式類別而非程式類別 (class)(class)

Services interact solely on schemas for Services interact solely on schemas for structures, contract for behaviorsstructures, contract for behaviors

Unlike OO classes, services do not conflate Unlike OO classes, services do not conflate structure and behaviorstructure and behavior

Machine verifiability allows us to protect Machine verifiability allows us to protect service integrityservice integrity

Contracts and schema remain stable over Contracts and schema remain stable over timetime

http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx

Don’t (expect me to) overshare.

Page 13: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

Understanding Tenet 4: Understanding Tenet 4: 服務相容性由原則決定服務相容性由原則決定

Separates the interactions the Separates the interactions the service can have from the service can have from the constraints on those interactions.constraints on those interactions.

Service capabilities and Service capabilities and requirements are expressed in terms requirements are expressed in terms of a policy expressionof a policy expression

Assertions identified by stable, Assertions identified by stable, globally unique namesglobally unique names

http://msdn.microsoft.com/msdnmag/issues/04/01/Indigo/default.aspx

Page 14: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

服務導向的好處服務導向的好處Architecture and DevelopmentArchitecture and Development Formal interaction model facilitates simplicity, Formal interaction model facilitates simplicity,

correctness, implementation independence, correctness, implementation independence, dependency management.dependency management.

IT and OperationsIT and Operations Explicit interaction points are more discoverable, Explicit interaction points are more discoverable,

operable. operable. Crisply isolates service capability from IT environment. Crisply isolates service capability from IT environment. Independent deployment, versioning, management, Independent deployment, versioning, management,

topologytopology

BusinessBusiness Services promote technology reuse, resulting in cost Services promote technology reuse, resulting in cost

savingssavings Services model business capabilitiesServices model business capabilities Systems serve the business, not vice versaSystems serve the business, not vice versa Inter-departmental or inter-org relationships Inter-departmental or inter-org relationships

formalized and expressed through service interactionformalized and expressed through service interaction Facilitates outsourcing and focus on core Facilitates outsourcing and focus on core

competenciescompetencies

Page 15: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

實例實例For services to interact, the boundary, schema, contraFor services to interact, the boundary, schema, contract, policy should be expressed in a ct, policy should be expressed in a common tonguecommon tongue A SO environment extends only as far as we agree on the expA SO environment extends only as far as we agree on the exp

ression of the boundaryression of the boundary How far do you want your boundary to extend?How far do you want your boundary to extend?A system which is implemented to SO principles and A system which is implemented to SO principles and which wants broadest possible applicability through iwhich wants broadest possible applicability through interoperability will build on the WS-* protocol family.nteroperability will build on the WS-* protocol family.Microsoft offers great tools for building Services NOWMicrosoft offers great tools for building Services NOW Build services using ASMX in ASP.Net todayBuild services using ASMX in ASP.Net today Track emerging protocols with WSETrack emerging protocols with WSE ASMX gets better in WhidbeyASMX gets better in Whidbey Indigo will makes Service Oriented development even better Indigo will makes Service Oriented development even better

in the futurein the future

Page 16: MSDN 中文線上教學課程 SOA 系列課程. 簡介服務導向架構 SOA Overview 什麼是服務導向 (SO)? SOA 系統四大特性 : 1. 明確的系統分界 2. 自主性服務

© 2005 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.