資源描述:
《淘寶店鋪裝修的那些事.pdf》由會員上傳分享,免費在線閱讀,更多相關內容在工程資料-天天文庫。
1、淘寶店鋪裝修的那些事2010年12月29日15:43主題【B2B商城系列分享之--淘寶店鋪裝修的那些事】發(fā)件人許赟欽收件人B2B-技術部-中國網(wǎng)站技術部;B2B-QA-CN;B2B-platform抄送元倫;雷卷發(fā)送時間2010年12月29日15:38附件淘寶裝修中心的那些事大家好:今天B2C商城團隊分享一篇關于淘寶店鋪裝修方面的知識,可以讓更多B2B同學了解淘寶店鋪裝修,其設計方案也是值得借鑒。附件PDF格式有更佳的閱讀效果。淘寶店鋪裝修的那些事中國網(wǎng)站技術部-B2C商城許赟欽店鋪是淘寶網(wǎng)的一大核心應用,其頁面展示功能強大,針對不同行業(yè)、不同層次的用戶提供不同的店鋪展示服
2、務,用戶根據(jù)自身的需求選擇合適的版本和裝修模塊。目前淘寶店鋪按照裝修站點可分為普及版、標準版、商城版、拓展版、外店版等版本,頁面展示個性化都得益于裝修系統(tǒng)。一、初識裝修下圖是旺鋪拓展版的詳情頁默認布局模塊管理頁面:圖表1:詳情頁面裝修。藍色部分頁面不可裝修,紅色部分可裝修。裝修實例:在寶貝詳情裝修頁面添加模塊“自定義內容區(qū)”并修改內容,結果如下(紅框所示):頁面發(fā)布成功之后,詳情頁面展示如下:這個例子就是通過裝修系統(tǒng)DesignSystem(DS)編輯頁面,完成后保存并發(fā)布該頁面,在頁面展示時,裝修中心DesignCenter(DC)負責渲染并展示。DS和DC讓頁面?zhèn)€性化變
3、的更加容易。分區(qū)未歸檔筆記的第1頁二、了解DesignSystem和DesignCenter首先從淘寶網(wǎng)全局架構中看DS和DC所處的位置。圖表2:淘寶主要架構圖淘寶的架構層次清晰,直接面向用戶的應用如DETAIL、SHOPSYSTEM(SS)、DESIGNSYSTEM屬于前臺應用,核心業(yè)務不直接依賴于數(shù)據(jù)庫,而是通過服務中心提供的服務接口獲取業(yè)務數(shù)據(jù),服務中心包括用戶中心(UIC)、商品中心(IC)、交易中心(TC)等等,裝修中心DC正是處理裝修頁面模塊信息中心。下圖具體說明DS和DC的職責和關系,即賣家在裝修系統(tǒng)DS自定義出的頁面和模塊信息保存在DC,由DC提供服務接口給
4、其他服務中心和前臺應用。圖表3:DS與DC的關系及作用淘寶DETAIL包括無名良品DETAIL與各個中心服務有著緊密聯(lián)系,尤其是DC,在頁面模塊化、個性化展示有著舉足輕重的作用,本文將著重介紹DC的作用和設計思路,讀者將會了解裝修中心服務化的運作機制。三、裝修中心是如何工作的裝修中心基本工作流程:在頁面、布局、模塊都有針對不同旺鋪類型和行業(yè)的原型,一個賣家的自定義裝修頁面都是在各自原型基礎之上創(chuàng)建實例,DC將根據(jù)前臺應用傳入的不同參數(shù)決定獲取什么樣的數(shù)據(jù)和執(zhí)行什么樣的業(yè)務邏輯。1.DC的數(shù)據(jù)存儲邏輯按照模塊原型和賣家創(chuàng)建的頁面實例和前臺應用參數(shù)的方式,DC將數(shù)據(jù)庫分為三個邏
5、輯數(shù)據(jù),即:元數(shù)據(jù)庫、業(yè)務數(shù)據(jù)庫和輸入頁面參數(shù)庫。1)元數(shù)據(jù)主要處理基本信息,包括頁面原型,布局原型,模塊和站點信息等。如模塊的高度、寬度、基本html代碼、標題等等都屬于元數(shù)據(jù),每一個模塊在整個淘寶網(wǎng)都是唯一的。2)業(yè)務數(shù)據(jù)主要是要處理用戶頁面實例。當賣家裝修某個模塊后,則產(chǎn)生了實例,這些實例包含了具體賣家設置的信息,這些屬于業(yè)務數(shù)據(jù),如上文實例的自定義內容“淘寶店鋪裝修”。3)頁面參數(shù)是用戶在交互式錄入的頁面參數(shù),這些參數(shù)構造一個正在裝修的頁面。頁面參數(shù)是存儲賣家正在裝修的頁面模塊數(shù)據(jù),當賣家裝修完成并發(fā)布頁面時,這些數(shù)據(jù)就會解析成一個xml文件,并保存在TFS。TFS
6、即淘寶分布式文件系統(tǒng)(TAOBAOFIELSYSTE)。頁面XML格式接下來介紹。一個站點的頁面一般都是如下結構:圖表5:頁面模塊化結構示意圖即站點>頁面>布局>模塊的層次關系圖,從左至右的各個關系都是一對多的關系,即一個站點有多個頁面,每一個頁面有多個布局,每一個布局有多個模塊組成。在DC存儲的頁面結構數(shù)據(jù)也是如此,一個簡單的頁面XML格式如下:分區(qū)未歸檔筆記的第2頁每一個module的prototype屬性就是上文提到的元數(shù)據(jù)即模塊原型,這些都是模塊的基本信息,不包含業(yè)務數(shù)據(jù),屬性id就是上文提到的對應該模塊原型的業(yè)務數(shù)據(jù)。Page、Layout也是同樣的道理。2.DC
7、如何渲染頁面DC維護著所有的模塊信息,也包括了模塊對應前臺應用的信息,前臺應用如DETAIL可以根據(jù)自己的信息獲取相應的模塊,代碼示例:參數(shù)“shop.headerArchiveNoNav”是模塊名字的簡稱。參數(shù)“1.1”是指模塊的版本號。參數(shù)“userId”和“shopId”用于展示該會員對應的店鋪信息。這樣就可以獲取當前賣家ID和店鋪ID的一個模板信息。獲取到對應的模板信息,系統(tǒng)就開始執(zhí)行業(yè)務和渲染頁面。這是一件很繁雜的事情,渲染有誰來負責也是一件值得考慮的事情。最開始很容易會想到有兩種方式,分別是DC渲染或前