對soa而言,術語「服務」有許多定義
oasis soa引用模型:
名稱服務在辭典被定義為「某人為別人執行的事務(職能)」。該定義含義寬泛,無所不包。
維基百科定義:
一項「服務」是乙個自足的、無狀態的業務功能,通過定義良好的標準介面,它接受乙個或多個請求,返回乙個或多個應答。服務也能執行離散的工作單元,如編輯和處理乙個事物。服務不應依賴於其他功能或過程。用於提供服務的技術,如程式語言,不構成本定義的一部分。服務體現了業務功能
soa聚焦於業務流程。服務的主要目標是體現業務功能的自然步驟。
乙個服務是乙個處理訊息的介面,它返回資訊,以及/或者改變相關實體(後端系統)的狀態。
本質上,soa是乙個軟體架構,從介面定義開始,將整個應用布局建立成介面、介面實現及介面呼叫的布局。soa叫做「面向介面的架構」其實更合適。——yefim v. natis一種介面是簽名,描述了輸入引數、輸出引數以及可能的異常。
作為服務的消費者需要知道服務完整的行為和語義。介面必須是定義良好的。
定義良好的介面,其行為必須是明確的。乙份契約是對特定**者和特定消費者之間的服務的完整規格說明。從消費者的角度看,它定義了當使用服務時你應知道的一切。
實踐中,對服務非描述從定義良好的介面開始。然後當某個特定的客戶想要使用服務時,再基於定義良好的介面作出特定的契約。契約反映出,當你遵守特定的非功能性承諾時,需要提供給服務的必要資源。
對容錯的需求
松耦合主要用來處理可伸縮性、靈活性和容錯這些需求。松耦合的目標是最小化依賴。松耦合給系統帶來更加複雜的代價。松耦合意味著更多的開發以及維護工作量。
非同步通訊
異質資料結構
服務消費者應將**者資料型別對映為自己的資料結構、
利: 系統可以修改自己的資料結構,不會對其它系統造成直接影響。
弊:需要從乙個系統向另乙個系統對映資料。
中介者兩類中介者:
1. 發出服務呼叫前就告訴你正確的服務端點。這樣的中介者通常稱為「中間人」或名字伺服器。
2. 消費者發出呼叫之後,為請求選擇正確的服務端點。
讀書筆記 AgilePPP XP實踐
客戶 管理者 開發緊密工作在一起。客戶 指定義產品特性並排列特性優先順序的人或團體。同一公司的業務分析師 質量保證專家 市場專家 使用者團體的代表 支付開發費用的人。都是能和團隊一起工作的成員。客戶或能代替客戶的人最好和開發在同乙個房間工作。了解需求只要做到能估算的程度就夠了。必須知道存在很多細節及...
讀書筆記 AgilePPP XP實踐
客戶 管理者 開發緊密工作在一起。客戶 指定義產品特性並排列特性優先順序的人或團體。同一公司的業務分析師 質量保證專家 市場專家 使用者團體的代表 支付開發費用的人。都是能和團隊一起工作的成員。客戶或能代替客戶的人最好和開發在同乙個房間工作。了解需求只要做到能估算的程度就夠了。必須知道存在很多細節及...
《CSS權威指南》讀書筆記
第二章 選擇器 第三章 結構和層疊 第四章 值和單位 第五章 字型 第六章 文字屬性 第七章 基本視覺格式化 第八章 內邊距邊框和外邊距 第九章 顏色和背景 第十章 浮動和定位 第十一章 表布局 第十二章 列表與生成內容 第十三章 使用者介面樣式 第十四章 非螢幕 import url sheet....