服務(wù)總線接口規(guī)范分析解析_第1頁
服務(wù)總線接口規(guī)范分析解析_第2頁
服務(wù)總線接口規(guī)范分析解析_第3頁
服務(wù)總線接口規(guī)范分析解析_第4頁
服務(wù)總線接口規(guī)范分析解析_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、安徽電信服務(wù)總線接口規(guī)范安徽電信有限公司2014 年 02 月服務(wù)總線接口規(guī)范版本記錄版本號時間記錄人變更原因變更描述V0.12014-1-5李超初始V0.22014-2-22李超修訂增加接口參數(shù)描述第1章 概述51.1概述51.2目標(biāo)51.3規(guī)范使用對象及說明 51.4名詞解釋6第2章服務(wù)設(shè)計原則62.1接口協(xié)議統(tǒng)一原則 62.3服務(wù)定義唯一性原則 72.4服務(wù)無狀態(tài)原則 72.5服務(wù)部署原則 82.6服務(wù)組合原則82.7報文內(nèi)容處理的原則 82.8出入?yún)⒃O(shè)計原則 92.9規(guī)則校驗的原則92.10數(shù)據(jù)量原則92.11同步調(diào)用原則102.12統(tǒng)一入口原則102.13持久化原則10第3章服務(wù)接入

2、規(guī)范103.1調(diào)用方式113.2參數(shù)說明12安徽電信服務(wù)總線第3頁,共24頁服務(wù)總線接口規(guī)范321系統(tǒng)級參數(shù)123.3返回業(yè)務(wù)功能14第4章安全控制144.1訪問鑒權(quán)154.2傳輸加密16第5章異常分類編碼 16第6章 服務(wù)注冊、注銷、變更、調(diào)用流程 176.1服務(wù)注冊的流程 176.2服務(wù)注冊的內(nèi)容186.3測試環(huán)境服務(wù)注冊的流程 19第7章服務(wù)治理197.1 目標(biāo)197.2檢查方法207.3服務(wù)監(jiān)控的指標(biāo) 21安徽電信服務(wù)總線第4頁,共24頁服務(wù)總線接口規(guī)范安徽電信服務(wù)總線第7頁,共24頁7.4服務(wù)目錄樹22第1章概述1.1概述本規(guī)范明確了安徽電信服務(wù)總線接入及服務(wù)使用的標(biāo)準(zhǔn)和規(guī) 范,為服

3、務(wù)使用方和服務(wù)提供方提供開發(fā)參考。1.2目標(biāo)本規(guī)范為了指導(dǎo)各業(yè)務(wù)系統(tǒng)與服務(wù)總線平臺的對接,實現(xiàn)以 下目標(biāo):1)當(dāng)服務(wù)總線接入業(yè)務(wù)系統(tǒng)服務(wù)時,為該服務(wù)提供方提供開 發(fā)依據(jù)。2)當(dāng)服務(wù)使用方調(diào)用服務(wù)總線提供的服務(wù)時,為該服務(wù)使用 方提供開發(fā)依據(jù)。3)為服務(wù)使用過程中安全及控制提供標(biāo)準(zhǔn)和參考。1.3規(guī)范使用對象及說明本規(guī)范適用于所有新建或改造的服務(wù)接口,均需要遵守本規(guī) 范約定。1.4名詞解釋1)服務(wù)提供方:提供原始服務(wù),并將服務(wù)發(fā)布到服務(wù)總線的 內(nèi)部業(yè)務(wù)系統(tǒng)、第三方企業(yè)或個人。2)服務(wù)使用方:使用服務(wù)總線上的服務(wù)進(jìn)行應(yīng)用開發(fā)的內(nèi)部 應(yīng)用系統(tǒng)、第三方企業(yè)或個人。3)服務(wù)商:平臺為統(tǒng)一管理服務(wù)的提供方和

4、使用方,綜合其 統(tǒng)稱為服務(wù)商。4)服務(wù):服務(wù)是執(zhí)行可重復(fù)任務(wù)的可發(fā)現(xiàn)資源,由外部化的 服務(wù)規(guī)范進(jìn)行描述。服務(wù)可分為技術(shù)服務(wù)和業(yè)務(wù)服務(wù)兩 種。第2章服務(wù)設(shè)計原則由于各個系統(tǒng)和平臺之間存在差異性,為確保安徽電信服務(wù) 總線的穩(wěn)定高效,服務(wù)設(shè)計原則如下:2.1接口協(xié)議統(tǒng)一原則服務(wù)總線接口規(guī)范所有服務(wù)的接口均基于 Http協(xié)議。服務(wù)提供方和服務(wù)使用方 必須同時使用同一種類型的技術(shù)來進(jìn)行開發(fā)和調(diào)用,調(diào)用的 服務(wù)通過HTTP URL中特定屬性進(jìn)行標(biāo)識,具體見接口協(xié) 議。2.2數(shù)據(jù)格式統(tǒng)一原則服務(wù)的接口數(shù)據(jù)包含業(yè)務(wù)所有的業(yè)務(wù)數(shù)據(jù),數(shù)據(jù)采用JSON格式表示,并且符合相應(yīng)的 JSON Schema。服務(wù)提供方和服

5、 務(wù)消費方必須同時使用同一種格式進(jìn)行數(shù)據(jù)交互。2.3服務(wù)定義唯一性原則一個服務(wù)應(yīng)該只實現(xiàn)一個業(yè)務(wù)功能,業(yè)務(wù)功能的區(qū)別通過服 務(wù)編碼來區(qū)分,不應(yīng)通過定義不同的業(yè)務(wù)數(shù)據(jù)在同一個服務(wù) 編碼下實現(xiàn)不同的業(yè)務(wù)功能。2.4服務(wù)無狀態(tài)原則服務(wù)應(yīng)是無狀態(tài)的,兩次請求之間無須狀態(tài)和會話的保 持,并可以采用輪詢的方式在負(fù)載均衡器上進(jìn)行注冊安徽電信服務(wù)總線第7頁,共24頁2.5服務(wù)部署原則服務(wù)應(yīng)是全局的,不應(yīng)區(qū)分本地網(wǎng)、大區(qū)等,但可以部署多份用以提供不同優(yōu)先級的服務(wù)。2.6服務(wù)組合原則服務(wù)按照服務(wù)粒度設(shè)計成原子服務(wù)和組合服務(wù)。原子服 務(wù)為最細(xì)粒度的服務(wù),組合服務(wù)由原子服務(wù)組合而成。為有 效提高組合服務(wù)的效率,跨系統(tǒng)

6、的組合服務(wù)由服務(wù)總線調(diào)用 不同的原子服務(wù)實現(xiàn)組合,系統(tǒng)內(nèi)的組合服務(wù)由服務(wù)提供方 在應(yīng)用內(nèi)部進(jìn)行組合。2.7報文內(nèi)容處理的原則服務(wù)請求和返回的的報文應(yīng)符合JSON Schema格式。服務(wù)請求方和提供方應(yīng)采用通用的JSON解析器來構(gòu)造和解析數(shù)據(jù),JSON不同含義的段落應(yīng)定義明確含義的字段名稱, 相同內(nèi)容的數(shù)據(jù)應(yīng)采用數(shù)組來進(jìn)行描述,雙方可根據(jù)JSON名稱和路徑進(jìn)行精確定位,不應(yīng)根據(jù)字段的順序來獲取字段安徽電信服務(wù)總線第8頁,共24頁服務(wù)總線接口規(guī)范值,字段值不受字段順序調(diào)整的影響。報文統(tǒng)一采用UTF-8進(jìn)行編碼。2.8出入?yún)⒃O(shè)計原則為提高查詢類服務(wù)的通用性和性能,查詢類服務(wù)在入?yún)⒅卸?義返回字段列表

7、,服務(wù)提供方根據(jù)入?yún)⒅兄付ǖ淖侄畏祷匦?息。查詢內(nèi)接口應(yīng)在入?yún)⒅卸x分頁參數(shù),返回參數(shù)中應(yīng)包含當(dāng) 前頁數(shù)、總頁數(shù)或是已到最后一頁等信息。返回參數(shù)中如返回靜態(tài)編碼值時應(yīng)同時返回此編碼值對 應(yīng)的名稱。2.9規(guī)則校驗的原則服務(wù)提供方應(yīng)對請求報文格式和關(guān)鍵信息進(jìn)行合規(guī)性和業(yè) 務(wù)校驗,防止非法訪問和入侵。2.10數(shù)據(jù)量原則服務(wù)總線所傳遞的單條消息大小原則上不大于1M,否則應(yīng)建議采用文件傳輸、接口表傳輸、直連等連接方式。2.11同步調(diào)用原則服務(wù)調(diào)用方和服務(wù)提供方采用同步調(diào)用的方式進(jìn)行請求,如需要使用異步調(diào)用可采用消息隊列或服務(wù)調(diào)用方定義異步通知接口來實現(xiàn)。2.12統(tǒng)一入口原則服務(wù)總線對外提供統(tǒng)一的調(diào)用地址

8、。2.13持久化原則服務(wù)使用方在使用服務(wù)的過程中,由服務(wù)總線進(jìn)行整個過程的日志記錄,并對調(diào)用的詳細(xì)信息進(jìn)行持久化,便于對賬和稽核。建議服務(wù)調(diào)用方和提供方對調(diào)用的關(guān)鍵信息(如 流水號,源地址等)進(jìn)行持久化。第3章服務(wù)接入規(guī)范對于服務(wù)調(diào)用的訪問方式,平臺采用標(biāo)準(zhǔn)的HTTP調(diào)用方式。3.1調(diào)用方式接口服務(wù)通過 http:ip:port/oip/rest訪問平臺服務(wù)。IP和PORT根據(jù)實際生產(chǎn)環(huán)境情況對外公布。其中/oip/rest保持不變。實例:基于REST的服務(wù)請求以使用“查詢BSS用戶短信詳單”服務(wù)為例,該服務(wù)的具體 信息如下:服務(wù)名稱:查詢 BSS用戶短信詳單;服務(wù)編碼:SelectSmsIn

9、fo ;開發(fā)技術(shù):采用 HTTP協(xié)議技術(shù);請求方式:采用 GET/POST都可以調(diào)用方信息不變。根據(jù)上面這些信息,得出服務(wù)訪問地址為:GET方式:4:7080/oip/rest?send=crm&servCode=1001.0PEN_3RD.Sync&msgld=crm_20130718_10001 &busiURI=/Sel ectSmslnf/1末位的“ 1是模擬業(yè)務(wù)參數(shù)。POST方式:http:/4:7080/oip/res?send=crm&servCode=1001.OPEN_3 RD.Sync&msgld=crm_20

10、130718_10001 &busiURI=/SelectSmsln f/1業(yè)務(wù)參數(shù)的內(nèi)容放在 http的請求體中傳輸3.2參數(shù)說明3.2.1系統(tǒng)級參數(shù)以下參數(shù)是由服務(wù)總線定義的。表格3-1系統(tǒng)級參數(shù)參數(shù)名類型是否必需描述Sendstring是客戶端所屬系統(tǒng)編碼,填 寫請參考3.1節(jié)(系統(tǒng)標(biāo) 志全部米用此編碼)servCodestring是客戶端需要訪問的服務(wù)編碼,由服務(wù)總線在注冊后 統(tǒng)一提供msgldstring是由調(diào)用方系統(tǒng)按照 OIP規(guī) 則生成的唯標(biāo)識次調(diào) 用的字符串,長度小于 64 位。生成規(guī)則: 系統(tǒng)名當(dāng)前時間戳流水 號busiUrlstring是消費方傳遞的業(yè)務(wù)部分地 址App k

11、eyString否服務(wù)總線分配的應(yīng)用標(biāo)志transactionldString是交易流水號,由調(diào)用方生 成,多次請求均會包含此 信息。格式建議為系統(tǒng)名 _ 當(dāng)前時間戳 流水號R1String否動態(tài)路由參數(shù)1R2String否動態(tài)路由參數(shù)2R3String否動態(tài)路由參數(shù)3transactionld :交易流水號。服務(wù)請求需經(jīng)過多個系統(tǒng)或多個 系統(tǒng)模塊,為了有效標(biāo)志出一次業(yè)務(wù)請求經(jīng)過的所有調(diào)用, 服務(wù)調(diào)用方在請求時生成一唯一的流水號,服務(wù)總線在多次 調(diào)用過程中將會保持此交易流水號一致,服務(wù)提供方也應(yīng)記錄此交易流水號。所有消息日志應(yīng)統(tǒng)一記錄到統(tǒng)一日志平臺以供事后分析。R1-R3 :動態(tài)路由參數(shù),為了

12、保持路由的靈活性,調(diào)用方可 動態(tài)添加最多3個路由參數(shù),如版本號,本地網(wǎng)等參數(shù),服 務(wù)總線根據(jù)此參數(shù)路由到特定的服務(wù)提供方節(jié)點上,以滿足 試點,灰度發(fā)布等場景。3.3返回業(yè)務(wù)功能返回參數(shù)分為兩部分,一部分為HTTP協(xié)議部分,包含了請求的狀態(tài),異常代碼和異常信息,200表示本次請求完成,500表示服務(wù)總線調(diào)用服務(wù)提供方出現(xiàn)異常等;一部分為業(yè) 務(wù)數(shù)據(jù),業(yè)務(wù)數(shù)據(jù)采用 JSON格式,JSON格式需符合JSON Schema的校驗規(guī)則,業(yè)務(wù)異常也在此部分定義。服務(wù)總線后 臺分析系統(tǒng)將會對請求和返回的報文進(jìn)行事后分析。第4章安全控制4.1訪問鑒權(quán)服務(wù)總線對外提供統(tǒng)一安全控制策略。所有訪問能力開放平臺的服務(wù)時

13、,都必須經(jīng)過平臺的鑒權(quán),鑒權(quán)通過后方允 許訪問,否則將給與攔截。能力開放的訪問鑒權(quán)提供如下幾種策略:服務(wù)商鑒權(quán):凡是使用能力開放平臺的服務(wù)使用方必須是已注冊的服務(wù)商下的一個客戶端。該部分由使用方進(jìn)行申請, 平臺完成注冊,同時為服務(wù)使用方分配可使用服務(wù)的權(quán)限。IP地址鑒權(quán):應(yīng)用集成平臺支持服務(wù)使用方的IP地址身份認(rèn)證模式。對于不在服務(wù)使用方申請的IP地址范圍內(nèi)產(chǎn)生的服務(wù)調(diào)用,平臺給予攔截和告警。對于通過多重路由或映射導(dǎo) 致不能獲得實際IP地址時,將采用鑒權(quán)碼方式替代。摘要式認(rèn)證:采用標(biāo)準(zhǔn)的HTTP摘要認(rèn)證方式進(jìn)行訪問認(rèn) 證,具體介紹見參考文檔OAuth2.0:對于嚴(yán)格權(quán)限限制的場景,通過OAut

14、h2.0協(xié)議進(jìn)行認(rèn)證和授權(quán),授權(quán)由應(yīng)用系統(tǒng)統(tǒng)一提供。4.2傳輸加密對于安全非常高的場合,建議全流程采用HTTPS協(xié)議進(jìn)行加密傳輸,如繳費等場景。第5章異常分類編碼在使用平臺服務(wù)的過程中,平臺對不同的異常進(jìn)行分類,供開發(fā)者和使用方在調(diào)測及使用過程中參考種類編碼描述正常0成功接口請求方 異常2消息格式異常,例如必填參數(shù)未填、消 息編碼異常等3無效的路由屬性10接口請求超過指定流量9接口請求包大小超過限制6權(quán)限異常(例如無權(quán)訪問此服務(wù))101重復(fù)請求102無效的業(yè)務(wù)域或業(yè)務(wù)大類、小類199接口請求方其他異常接口響應(yīng)方 異常8接口響應(yīng)方超時201接口響應(yīng)超過指定流量202接口響應(yīng)包大小超過限制298接

15、口響應(yīng)方內(nèi)部異常299接口響應(yīng)方其他異常平臺異常4調(diào)用的服務(wù)未發(fā)布5調(diào)用的服務(wù)已注銷7調(diào)用的服務(wù)已關(guān)閉11調(diào)用的服務(wù)不存在1服務(wù)調(diào)用失敗398平臺內(nèi)部異常399平臺其他異常其他異常999其他異常測試異常601測試接口未實現(xiàn)業(yè)務(wù)定義異 常1000如果遇到上述類似異常代碼或信息,可以和平臺維護(hù)人員聯(lián)系幫助解決。第6章 服務(wù)注冊、注銷、變更、調(diào)用流程6.1服務(wù)注冊的流程服務(wù)注冊和變更:由服務(wù)提供方在ITSM發(fā)起申請,經(jīng)服務(wù)評審后,由ITSM調(diào)用服務(wù)總線提供的能力進(jìn)行注冊和變 更。服務(wù)注銷:由服務(wù)提供方或服務(wù)總線管理方根據(jù)實際需求和 服務(wù)的調(diào)用次數(shù)等評估后發(fā)起,經(jīng)服務(wù)提供方、服務(wù)總線管 理部門和服務(wù)調(diào)

16、用方會審后在 ITSM中發(fā)起下線流程。服務(wù)調(diào)用:由服務(wù)調(diào)用方發(fā)起,經(jīng)服務(wù)提供方確認(rèn)和服務(wù)評 審后在服務(wù)總線上進(jìn)行注冊。服務(wù)評審由服務(wù)總線管理部門牽頭組織。6.2服務(wù)注冊的內(nèi)容名稱說明接口名稱接口編碼接口簡要描述請求報文樣例返回報文樣例請求報文格式定義返回報文格式定義接口業(yè)務(wù)異常列表 和描述版本號對應(yīng)的服務(wù)節(jié)點注冊服務(wù)地址探測報文(可選)是否進(jìn)行探測(時 間,頻度)備用服務(wù)地址(在 連續(xù)失敗或撥測失 敗等情況下自動或 手工切換服務(wù)地 址)6.3測試環(huán)境服務(wù)注冊的流程測試環(huán)境服務(wù)注冊由ITSM發(fā)起,在完成表單填寫后自動在 服務(wù)總線上進(jìn)行處理。第7章服務(wù)治理7.1目標(biāo)1、所有域的服務(wù)按照協(xié)議規(guī)范全部

17、接入服務(wù)總線,避免出 現(xiàn)服務(wù)未在服務(wù)總線直接使用。2、注冊在服務(wù)總線上的服務(wù)必須符合服務(wù)總線的規(guī)范,包括接口協(xié)議,數(shù)據(jù)格式,不得私自更改協(xié)議或超過注冊的內(nèi)容升級接口內(nèi)容7.2檢查方法1、 按照所有服務(wù)全部由服務(wù)總線調(diào)用或者由F5負(fù)載均衡器調(diào)用的基本原則,服務(wù)管理團隊會定期對主機和F5上服務(wù)的調(diào)用方IP進(jìn)行審核,如果出現(xiàn)服務(wù)端口出現(xiàn)非服務(wù) 總線或非F5主機的調(diào)用,或者 F5主機上服務(wù)端口非服務(wù) 總線的調(diào)用,則認(rèn)為出現(xiàn)了異常的服務(wù)調(diào)用,由服務(wù)提供 方提供服務(wù)調(diào)用日志或版本變化情況進(jìn)行詳細(xì)的解釋。2、服務(wù)接口參數(shù)應(yīng)符合接口規(guī)范,服務(wù)總線將定期對服務(wù) 調(diào)用異常、失敗、異常代碼等進(jìn)行統(tǒng)計,給出服務(wù)接口的 符合度。3、 服務(wù)返回的業(yè)務(wù)數(shù)據(jù)應(yīng)符合注冊時提供的JSONSchema,不符合的則認(rèn)為是注冊信息不全或異常升級。服 務(wù)總線將定期從服務(wù)調(diào)用報文中進(jìn)行格式校驗,對不符合 格式的消息請求反饋服務(wù)提供方并要求進(jìn)行說明。7.3服務(wù)監(jiān)控的指標(biāo)指標(biāo)類型運行類調(diào)用次數(shù)平均調(diào)用時長1秒以內(nèi)調(diào)用 次數(shù)1-5秒以內(nèi)調(diào) 用次數(shù)5秒以上調(diào)用 次數(shù)調(diào)用成功次數(shù)調(diào)用失敗次數(shù)調(diào)用超時次數(shù)非法調(diào)用個數(shù)常規(guī)類服務(wù)注冊個數(shù)服務(wù)變更個數(shù)服務(wù)注銷個數(shù)規(guī)范類異常服務(wù)接口 個數(shù)接口請求不合 規(guī)個數(shù)報文格式不合 規(guī)個數(shù)7.4服務(wù)目錄樹服務(wù)總線上注冊的服務(wù)按照服務(wù)目錄樹進(jìn)行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論