Posted on 2010-07-03 14:23
啥都寫點 閱讀(406)
評論(0) 編輯 收藏
淘寶網(wǎng)有很多業(yè)務,這些業(yè)務涉及交易、商品、產(chǎn)品、物流、用戶、類目等多種數(shù)據(jù),它們關系如下圖所示:

這些數(shù)據(jù)來源中,需要一定處理周期的數(shù)據(jù)需要去請求搜索引擎或者某些分析系統(tǒng),訪問量非常大的需要完全在本地預加載(如類目數(shù)據(jù)),還有來自內(nèi)部的各種業(yè)務子系統(tǒng)提供的遠程訪問接口。
由于系統(tǒng)平臺的不同,編程語言的不同,外加歷史演化等等各種因素,導致目前淘寶內(nèi)部的傳輸協(xié)議(或框架)也不盡相同,有目前在淘寶內(nèi)部廣泛使用的hsf(high speed framework)分布式調用框架;有歷史遺留下來的hessian,rmi等java編程常用的協(xié)議,也有直接訪問自定義格式的http接口。
那么問題就產(chǎn)生了,如何才能簡單的把各種數(shù)據(jù)接口變成給開發(fā)者使用的json,xml格式的api接口呢?這里用一個圖來描述下目前淘寶內(nèi)部的api生成機制:

API路由系統(tǒng)獲得開發(fā)人員提交的API定義文件后,它就知道遠程服務的位置和傳輸協(xié)議,由于路由系統(tǒng)沒有遠程服務的接口客戶端,它需要根據(jù)定義文件定義的遠程服務需要的請求參數(shù),把他轉成合適的傳輸協(xié)議輸送過去,遠程服務接口獲取這些數(shù)據(jù)后根據(jù)淘寶的API協(xié)議引擎生成真正的調用參數(shù),獲取調用結果后轉成最終的json/xml協(xié)議,然后輸送回路由系統(tǒng),由路由系統(tǒng)響應給應用程序。
本文比較簡單的描述了一下目前TOP(淘寶開放平臺)內(nèi)部和API相關的原理,具體細節(jié)請等待后續(xù)文章。
本文作者:王霖(自雪)
延伸閱讀:
淘寶開放平臺開發(fā)指南之快速入門
淘寶TOP開放平臺開發(fā)指南之API是如何誕生的
淘寶開放平臺TOP開發(fā)指南之解密TOP的認證授權機制(一)
淘寶開放平臺TOP開發(fā)指南之架構組件體系介紹
淘寶開放平臺開發(fā)指南之淘寶動力開發(fā)者持續(xù)盈利的魔力
淘寶開放平臺開發(fā)指南之TOP的盈利模式
淘寶開放平臺開發(fā)指南之解密TOP服務分流與隔離
--
學海無涯