
Шаблон для презенташки SOA.ppt
- Количество слайдов: 35
Service Oriented Architecture An Introduction Arnon Rotem-Gal-Oz Biometrics Line Development Manager
What is Software Architecture
What is Architecture Formal Definition o IEEE 1471 -2000 n Software architecture is the fundamental organization of a system, embodied in its components, their relationships to each other and the environment, and the principles governing its design and evolution IEEE 1471 -2000
What is Software Architecture o collection of the fundamental decisions about a software product/solution designed to meet the project‘s quality attributes o Includes the main components, their main attributes, and their collaboration o expressed in several levels of abstraction (depending on the project's size). o Architecture is communicated from multiple viewpoints
Quality Attributes
How Architecture Stakeholders Quality Attributes Constraints Principles Community experience Architecture Architect Patterns & Anti-patterns Key people A “deliverable” Technology Produce Is an input
What is a Service (1) HMM. . o o A facility supplying some public demand the work performed by one that serves HELP, USE, BENEFIT Merriam-Webster
What is a Service (2) o o In economics and marketing, a service is the nonmaterial equivalent of a good. Service provision has been defined as an economic activity that does not result in ownership, and this is what differentiates it from providing physical goods. It is claimed to be a process that creates benefits by facilitating either a change in customers, a change in their physical possessions, or a change in their intangible assets. en. wikipedia. org/wiki/Service
What is a service (3) o A Windows Service? n o Software Service? n n o RPC Locator, Event. Log, DHCP Client, Distribution Service, Alert Service Security Service, Log Service Business Service? n n Common Operational Picture, Navigation Accounts Receivable, Customers
SOA isn’t a solution to world hunger Nor is it: o A specific Technology o The Ultimate answer to reuse o A New name for EAI o A New way to do RPC
Big SOA Analyze the business BLT ASB AFT TGI FRY ECP HDL SWG DRW MFP WCP QYD DLY SKD DLY XPS WIU XOI ZIS CUI WKD KYF WHR ASB RMO BST JIA HCO VUH KFC AJT FQA DKE GEX
Big SOA Identify Business Areas BLT ASB AFT TGI FRY Navigation Alerts HDL ECP SWG DRW MFP WCP QYD DLY SKD DLY XPS WIU XOI ASB ZIS CUI KYF Protectors WHR COP RMO BST WKD HCO VUH KFC JIA AJT FQA DKE GEX
Big SOA Map to software Prot. COP "Network" Nav. Alerts
Little SOA o Architectural Style o For building distributed systems o Loosely coupled components o Our focus from here onward…
Adheres to Policy Binds to End Point governed by Exposes Service Consumer Understands Contracts implements Service describes Key Component Sends/Receives Messages Sends/Receives Relation
Services and Systems o A service is a program you interact with via message exchanges o A system is a set of deployed services cooperating in a given task
A Service edge is a natural boundary Warning: Remoting and other RPCs trick us into thinking that there is no substantial difference between a local and a remote object. In fact, they hide the presence of the network.
The Network is reliable The Network is homogenou s Transport cost is zero Latency is zero Fallacies of distribute d Computin g There is one administrat or Bandwidth is infinite The Network is Secure Topology doesn’t change
Services are Autonomous
X
Policies The fact that I can, doesn’t mean I will.
Policy Illustrated Organization A Organization B Policy Runtime contract 1. Supports X. 509 Cert or Kerberos ST for Auth. N Buyer Service Supports UTF-8, UTF-16, SOAPSeller Service 2. 1. 2, 1. 1 … Design time Contract Policy Local Service 1. You’ll send a PO Policy 2. I’ll send a confirmation … Runtime Contract Local Service 1. Use X. 509 Cert for Auth. N 2. Use UTF-8, SOAP 1. 2 … Adopted from Clemens Vasters
Endpoint
It’s all about the Message, baby!
Messages travel in no man’s land!
Is he Idempotent? Messages Get Retransmitted Messages Arrive More than once
Idempotence o Idempotent Means It’s OK to Arrive Multiple Times n o As Long as the Request Is Processed at Least Once, the Correct Stuff Occurs In Today’s Internet, You Must Design Your Requests to Be Idempotent Not Idempotent Withdrawing $1 Billion Not Idempotent Baking a Cake Starting from Ingredients Naturally Idempotent Sweeping the Floor Idempotent If Haven’t Yet Done Withdrawal #XYZ for $1 Billion, Then Withdraw $1 Billion and Label as #XYZ Idempotent Baking a Cake Starting from the Shopping List (If Money Doesn’t Matter) Naturally Idempotent Read Record “X” Pat Helland
Message Exchange Patterns
Request/Reply VS Request/Reaction
Decoupled Invocation Pattern
Service Contract
Keep Data and state private
o Big SOA is about business alignment o Little SOA is an Architectural Style n n n Autonomous Coarse Grained Components Message based Interactions Run-Time configuration
What’s next o o o o SOA Structural Patterns SOA Interaction Patterns UI Interaction Patterns Service Composition Patterns Contract Anti-patterns Service Anti-patterns SOA Performance Anti-Patterns
Шаблон для презенташки SOA.ppt