課程內容安排
soa概覽
構建服務
wcf概覽
架構soa
的原則
wcf架構
wcf行為特徵
服務流程
soa的設計模式和「反模式」
服務管理
第一部分:
soa概覽
1
、soa
由於大多數的
soa研究人員和分析人員是技術導向的,這導致「架構」在服務開發的過程中被忽略了 「
a」代表了你如何開發,部署,訪問和管理你的服務,如果沒有「
a」,「
soa」系統的構建將是災難
2、服務「
s」和基於「
soa」的系統是不同的
乙個服務是通過資訊交換,進而產生互動的程式。它具有以下特點: 「
built to last」
可用性和穩定性是至關重要的
乙個「系統」是一系列的已經部署的服務和任務的總合。它具有以下特點: 「
built to change」
系統的柔性是至關重要的
3、面向服務的業務流程
粗粒度的業務服務操作(客戶程式與業務流程)
中等粒度的內部服務操作(業務流程與
businesscompoent)
細粒度的物件和資料庫呼叫(
businesscomponent
與資料庫)
4、組合應用程式
應用應該是有多個服務組成的 強調
composed
,而不是
built
跨越原有的功能
可以增加業務邏輯。暴露額外的介面
portal
、devices
、office
、other
————
composition platform
5、soa包括的內容:
工具:使用者互動、業務流程、資料、訪問管理、服務和資訊
服務的管理:構建無縫的、豐富的使用者體驗、組合和整合業務流程、提供針對多種資料的無縫的訪問能力、提供整合的安全性、針對多種系統的連線能力
第二部分:構建服務
1、microsoft soa框架
首先,如何決定應該暴露什麼服務
這點在soa的設計中是最難的
幾乎沒有人有豐富的經驗
核心:為將來使用這些服務的應用定義正確的用例圖
一些建議:
通過服務包裝器定義業務邏輯
不要直接暴漏物件
不要讓開發人員決定暴露何種服務
2、top—down
方法:
工作模式:首先定義邏輯框架 使用
microsoft』s motion
方**
發現哪些服務是必須的
建立針對服務的應用程式
優點:這些服務清晰、乾淨
缺點:在很多組織內,做到這點很難
做到基於業務的靈活性也是很難的
3、bottom up
方法:
language constructs
—language libraries
—object modules
—distributed objects
—service models
工作模式:
構建面向服務的應用
集中精力解決
soa的問題——
e.g.,security and management
優點:在許多組織內部,便於執行
缺點:對於定位服務來說,這種方法並不優美
面臨「無用服務」的問題,
這些通常導致無法制定乙個良好的計畫
4、面向服務分析中通常面臨的問題:
實體的辨別
實體的工廠化
服務的辨別
服務的工廠化
處理的規範
「觸點」的選擇
規則對映
slas
...
5、面向服務設計中通常面臨的問題:
schema定義
message定義
contract定義
訊息截獲
流程管理
事務模式
操作的相容性
異常管理
訊息到物件的對映
refinement of analysis …
windows communication foundation architecture 是
service model
之間的通訊的設計
第三部分:
soa的設計模式和「反模式」
1
、活動服務模式
單元工作應該是盡可能合理的盡快執行
同步業務元件
跨越多個實體交易的「偽同步」機制
單一介面:針對文件型別的
rpc
通常會被多種
user case
來呼叫
從可重用性中獲得
roi
購買和構建的組合
2、處理的服務模式
為實現業務處理的工作流提供控制介面
針對每個介面的不同許可權
維護流程的狀態
允許跨組組織的過程的執行
為每乙個業務流程的控制點提供介面
非同步觸點
多層的策略
有一些流程會被跨越用例的呼叫
需要保持「主流程」和用例的統一性
從「非居間化」中獲得
roi
通常需要構建,而且最好在乙個翻譯器中進行
基礎架構服務模式
滿足水平操作性的需求
實現和操作由公共標準定義的協約和實體
從系統服務商處購買
有時處於效能的要求,進行部署上的重新配置
否則,從其它模式,例如:處理、活動或實體服務模式中衍生
從管理過程的標準化中獲得
roi,並在高度依賴於應用組合
深入了解A
一 前言 在這裡我將對a 演算法的實際應用進行一定的 並且舉乙個有關a 演算法在最短路徑搜尋的例子。值得注意的是這裡並不對a 的基本的概念作介紹,如果你還對a 演算法不清楚的話,請看姊妹篇 初識a 演算法 這裡所舉的例子是參考amit主頁中的乙個源程式,使用這個源程式時,應該遵守一定的公約。二 a ...
深入了解A
一 前言 在這裡我將對a 演算法的實際應用進行一定的 並且舉乙個有關a 演算法在最短路徑搜尋的例子。值得注意的是這裡並不對a 的基本的概念作介紹,如果你還對a 演算法不清楚的話,請看姊妹篇 初識a 演算法 這裡所舉的例子是參考amit主頁中的乙個源程式,使用這個源程式時,應該遵守一定的公約。二 a ...
深入了解Dojo Data
譯自http www.sitepen.com blog 2010 10 13 dive into dojo data 使用dojo data有助於快速建立web應用的介面,且易於嵌入各種資料來源。它在使用者介面與底層資料之間提供了一層抽象層,使得使用者介面開發人員能夠專注於ui的開發,而無需擔心資料...