邵 斐(上海清算所,上海 200002)
面向電子商務(wù)的秒殺系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
邵斐
(上海清算所,上海 200002)
根據(jù)互聯(lián)網(wǎng)服務(wù)的特色,從可靠性、可擴(kuò)展性和安全性的角度著手,提出了一套面向電子商務(wù)領(lǐng)域的網(wǎng)絡(luò)秒殺系統(tǒng)的架構(gòu)設(shè)計(jì)方案。同時(shí)分析了秒殺系統(tǒng)的業(yè)務(wù)特點(diǎn),設(shè)計(jì)了一套相應(yīng)的業(yè)務(wù)體系,并給出了主要業(yè)務(wù)流程的具體實(shí)現(xiàn)方法?;谠摻鉀Q方案的秒殺系統(tǒng)可以達(dá)到高并發(fā)、高可靠、易擴(kuò)展以及高安全性的設(shè)計(jì)目標(biāo)。
秒殺;電子商務(wù);高并發(fā)
CNNIC第 33次中國(guó)互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告[1]顯示,我國(guó)網(wǎng)絡(luò)購(gòu)物用戶規(guī)模已達(dá)3.02億人。隨著網(wǎng)購(gòu)人群的不斷增長(zhǎng),閃購(gòu)、搶拍、整點(diǎn)購(gòu)等新興的秒殺類(lèi)促銷(xiāo)形式正逐步受到熱捧。然而目前學(xué)術(shù)界專(zhuān)門(mén)論述如何建設(shè)電商領(lǐng)域的秒殺類(lèi)應(yīng)用系統(tǒng)的相關(guān)文獻(xiàn)較少,因此本文針對(duì)此領(lǐng)域進(jìn)行了一定研究。
在電子商務(wù)領(lǐng)域,秒殺特指網(wǎng)絡(luò)賣(mài)家在某個(gè)時(shí)間點(diǎn)發(fā)布一些價(jià)格超低于平時(shí)市場(chǎng)價(jià)格的商品,所有買(mǎi)家在同一時(shí)間在網(wǎng)上進(jìn)行搶購(gòu)的銷(xiāo)售方式。由于網(wǎng)絡(luò)買(mǎi)家對(duì)于超低價(jià)商品的好奇心、好勝心,使得商品往往一上架就被搶購(gòu)一空,有時(shí)只用一秒鐘,因此被形象地稱為“秒殺”[2]。正是買(mǎi)家的這種博彩心理決定了秒殺應(yīng)用的最大特點(diǎn)就是瞬時(shí)性的超高并發(fā),往往秒殺開(kāi)始的最初幾秒至幾十秒內(nèi),網(wǎng)站的訪問(wèn)量就迅速達(dá)到峰值,從而引起服務(wù)器響應(yīng)延遲、服務(wù)異常甚至服務(wù)器癱瘓等諸多問(wèn)題。
在這種高并發(fā)的情況下,如何使網(wǎng)站能夠持續(xù)穩(wěn)定地服務(wù)是需要重點(diǎn)研究和解決的課題。本文提出的解決方案主要包含兩方面內(nèi)容:一方面在架構(gòu)層面上在考慮服務(wù)器成本的情況下通過(guò)負(fù)載均衡和CDN技術(shù)構(gòu)建一套具有較高魯棒性的系統(tǒng)架構(gòu);另一方面在業(yè)務(wù)層面上針對(duì)秒殺應(yīng)用的特點(diǎn),配合緩存技術(shù)[3]設(shè)計(jì)一套穩(wěn)定可行的業(yè)務(wù)處理流程。
1.1架構(gòu)分析
秒殺系統(tǒng)的特點(diǎn)包含兩個(gè)要素:一是高并發(fā),因此系統(tǒng)架構(gòu)上應(yīng)充分考慮整體系統(tǒng)的高可靠性[4];二是瞬時(shí),即高并發(fā)的情況并非時(shí)刻存在,應(yīng)從系統(tǒng)整體效費(fèi)比考慮,使得系統(tǒng)具有一定伸縮性。
1.2架構(gòu)設(shè)計(jì)
基于以上設(shè)計(jì)理念,本文將整個(gè)系統(tǒng)劃分為內(nèi)容展示層、應(yīng)用服務(wù)層和數(shù)據(jù)訪問(wèn)層3個(gè)層次,如圖1所示。從硬件設(shè)備角度,系統(tǒng)主要由WWW服務(wù)器集群、Web應(yīng)用服務(wù)器集群、文件服務(wù)器集群、緩存服務(wù)器集群、數(shù)據(jù)庫(kù)服務(wù)器集群以及相關(guān)的負(fù)載均衡等設(shè)備組成。
圖1 系統(tǒng)架構(gòu)圖
1.2.1內(nèi)容展示層設(shè)計(jì)
內(nèi)容展示層是與終端用戶直接交互的前端系統(tǒng)。考慮到秒殺系統(tǒng)中出售的商品信息多數(shù)內(nèi)容還是以靜態(tài)的網(wǎng)頁(yè)文字和圖片格式進(jìn)行呈現(xiàn)的,為了實(shí)現(xiàn)系統(tǒng)的高可用性,可以在用戶和服務(wù)器之間構(gòu)建一個(gè)網(wǎng)絡(luò)緩存層,比較常用的做法就是用CDN,即內(nèi)容分發(fā)網(wǎng)絡(luò)。其目的是使用戶可就近取得所需內(nèi)容,解決Internet網(wǎng)絡(luò)擁擠的狀況,提高用戶訪問(wèn)網(wǎng)站的響應(yīng)速度。
1.2.2應(yīng)用服務(wù)層設(shè)計(jì)
應(yīng)用服務(wù)層是整合系統(tǒng)的核心層,其作用是連接前端用戶的服務(wù)請(qǐng)求和后臺(tái)系統(tǒng)的服務(wù)響應(yīng),所有的業(yè)務(wù)處理都在本層中實(shí)現(xiàn)。為了保障系統(tǒng)的高并發(fā)性和可靠性,應(yīng)當(dāng)將服務(wù)器按集群模式[5]進(jìn)行部署,這樣做既可以避免因?yàn)閱吸c(diǎn)故障而導(dǎo)致的系統(tǒng)癱瘓,同時(shí)也可以保證對(duì)所有服務(wù)器硬件設(shè)備的集中管理和統(tǒng)一配置。WWW服務(wù)器集群主要用于接收和響應(yīng)用戶的訪問(wèn)請(qǐng)求。應(yīng)用服務(wù)器集群則是對(duì)從WWW服務(wù)器集群中轉(zhuǎn)發(fā)的各類(lèi)業(yè)務(wù)請(qǐng)求進(jìn)行及時(shí)的處理。通過(guò)負(fù)載均衡系統(tǒng)將各個(gè)業(yè)務(wù)集群進(jìn)行串聯(lián),將大量的并發(fā)訪問(wèn)數(shù)據(jù)分配到多臺(tái)節(jié)點(diǎn)設(shè)備上分別進(jìn)行處理,構(gòu)成完整的系統(tǒng)體系。通常采用專(zhuān)門(mén)的硬件設(shè)備 (如F5、A10等)實(shí)現(xiàn)負(fù)載均衡。負(fù)載均衡策略應(yīng)采取動(dòng)態(tài)的自適應(yīng)負(fù)載均衡策略[6],使得整個(gè)系統(tǒng)能夠根據(jù)當(dāng)前應(yīng)用的實(shí)際訪問(wèn)量情況調(diào)整服務(wù)器節(jié)點(diǎn)數(shù)量,在保證客戶網(wǎng)絡(luò)服務(wù)質(zhì)量的前提下盡可能減少資源浪費(fèi),降低系統(tǒng)費(fèi)用。
對(duì)于一個(gè)擁有大量用戶真實(shí)數(shù)據(jù)的電子商務(wù)系統(tǒng)[7],必須充分考慮到系統(tǒng)的安全性[8]。為了保證系統(tǒng)不被非法用戶入侵或惡意攻擊,防火墻作為整個(gè)系統(tǒng)的橋頭堡必須被部署在整個(gè)系統(tǒng)的入口處,設(shè)備應(yīng)當(dāng)盡量選取性能優(yōu)秀、穩(wěn)定可靠的硬件產(chǎn)品。除此之外,還應(yīng)部署專(zhuān)門(mén)的安全服務(wù)器以進(jìn)行系統(tǒng)的漏洞掃描、入侵檢測(cè)分析和安全審計(jì)工作,輔助防火墻保證系統(tǒng)的安全。
1.2.3數(shù)據(jù)訪問(wèn)層設(shè)計(jì)
數(shù)據(jù)訪問(wèn)層的任務(wù)是為應(yīng)用服務(wù)層提供所需的數(shù)據(jù)支持。為了降低對(duì)于數(shù)據(jù)庫(kù)I/O操作的壓力,必須在應(yīng)用服務(wù)與數(shù)據(jù)庫(kù)之間建立一個(gè)數(shù)據(jù)緩存層[9]。圖片、視頻等靜態(tài)信息都從專(zhuān)門(mén)的文件服務(wù)器集群上獲??;對(duì)于秒殺系統(tǒng)相關(guān)的產(chǎn)品數(shù)據(jù),應(yīng)在產(chǎn)品售賣(mài)之前將相關(guān)信息采用內(nèi)存緩存的方式存放在緩存服務(wù)器集群[10]中;而數(shù)據(jù)庫(kù)本身也應(yīng)以集群模式構(gòu)建,以 MySQL為例,可采用主從結(jié)構(gòu),并在程序?qū)訉?shí)現(xiàn)讀寫(xiě)分離,然后通過(guò)負(fù)載均衡進(jìn)行分布式調(diào)用。
2.1秒殺系統(tǒng)業(yè)務(wù)分析
秒殺系統(tǒng)與典型的高并發(fā)Web系統(tǒng)的最大區(qū)別就在于并發(fā)訪問(wèn)的發(fā)生場(chǎng)景。一般支持高并發(fā)的在線購(gòu)物平臺(tái)(如淘寶、京東、一號(hào)店等)每時(shí)每刻都會(huì)存在大量的并發(fā)訪問(wèn),是一種常態(tài)化的高并發(fā);而秒殺系統(tǒng)本身通常都不是作為一個(gè)獨(dú)立平臺(tái)而往往是以這些電商平臺(tái)中的一個(gè)子系統(tǒng)的形式出現(xiàn),同時(shí)秒殺產(chǎn)品的發(fā)售也有極強(qiáng)的時(shí)間限制,因此導(dǎo)致了秒殺系統(tǒng)的并發(fā)訪問(wèn)是一種突發(fā)的高并發(fā)。另外,秒殺歸根到底是電商的一種促銷(xiāo)手段,這種以超低價(jià)吸引買(mǎi)家的性質(zhì)決定了對(duì)應(yīng)的秒殺產(chǎn)品的庫(kù)存數(shù)絕不會(huì)是無(wú)限大的,相反往往會(huì)控制在一個(gè)相對(duì)很少的量級(jí)單位。通過(guò)以上分析可以得出,要構(gòu)建一套實(shí)用合理的秒殺業(yè)務(wù)系統(tǒng),主要是解決兩個(gè)問(wèn)題:一是如何提供穩(wěn)定可靠的產(chǎn)品基本信息查詢服務(wù);二是如何保證產(chǎn)品庫(kù)存的及時(shí)更新及訂單處理。
2.2秒殺系統(tǒng)業(yè)務(wù)設(shè)計(jì)
2.2.1產(chǎn)品查詢服務(wù)流程設(shè)計(jì)
對(duì)于如何提供穩(wěn)定可靠的產(chǎn)品基本信息查詢服務(wù)的問(wèn)題,主要通過(guò)頁(yè)面緩存[11]來(lái)解決。當(dāng)用戶訪問(wèn)相關(guān)頁(yè)面時(shí),預(yù)先判斷產(chǎn)品頁(yè)面是否存在緩存,如果存在則直接調(diào)用靜態(tài)頁(yè)面,否則從數(shù)據(jù)庫(kù)中讀取動(dòng)態(tài)數(shù)據(jù)信息,這樣做可以加快系統(tǒng)反應(yīng)時(shí)間,提高整個(gè)網(wǎng)站的性能[12]。另外,對(duì)于網(wǎng)頁(yè)中的圖片、視頻等文件,則從獨(dú)立的文件服務(wù)器中讀取,由于此類(lèi)信息本身并不影響具體業(yè)務(wù),因此通常采用異步方式進(jìn)行加載。產(chǎn)品查詢服務(wù)的業(yè)務(wù)流程圖如圖2所示。
圖2 產(chǎn)品查詢服務(wù)流程圖
由圖2可見(jiàn),當(dāng)緩存不存在時(shí)將不得不調(diào)用API從數(shù)據(jù)庫(kù)中直接獲取數(shù)據(jù),而此操作將會(huì)成為整個(gè)系統(tǒng)的性能瓶頸。為盡量避免對(duì)數(shù)據(jù)庫(kù)的操作,需要在系統(tǒng)中單獨(dú)部署一個(gè)Job服務(wù),在秒殺活動(dòng)開(kāi)始前遍歷相關(guān)產(chǎn)品預(yù)先生成頁(yè)面緩存信息。如果在某些特殊情況下依舊需要對(duì)數(shù)據(jù)庫(kù)進(jìn)行直接讀取操作,則在讀取完成后需要將當(dāng)次讀取到的信息同步入緩存中,以此保證下次再有對(duì)相同產(chǎn)品的訪問(wèn)請(qǐng)求時(shí)可直接讀取緩存,從而避免對(duì)數(shù)據(jù)庫(kù)的二次訪問(wèn)。同時(shí)為保證緩存中產(chǎn)品信息的時(shí)效性[13],引入時(shí)間戳概念,時(shí)間戳維護(hù)的業(yè)務(wù)流程圖如圖3所示。
圖3 產(chǎn)品緩存維護(hù)流程圖
當(dāng)后臺(tái)維護(hù)人員修改產(chǎn)品信息后,產(chǎn)品對(duì)應(yīng)的時(shí)間戳就會(huì)同步到數(shù)據(jù)庫(kù)的產(chǎn)品時(shí)間戳信息表中,此時(shí)后臺(tái)監(jiān)控服務(wù)發(fā)現(xiàn)某個(gè)產(chǎn)品的時(shí)間戳信息發(fā)生變化后則會(huì)即時(shí)刷新緩存數(shù)據(jù),以此確保前臺(tái)用戶取到的數(shù)據(jù)是最新的。緩存同步Job部署在獨(dú)立的內(nèi)部應(yīng)用服務(wù)器上,由于服務(wù)需要從產(chǎn)品時(shí)間戳信息表中獲取產(chǎn)品及其時(shí)間戳數(shù)據(jù),為了盡量降低每次從數(shù)據(jù)庫(kù)獲取的數(shù)據(jù)量,除了第一次數(shù)據(jù)初始化外,之后每次僅獲取上次運(yùn)行完成的時(shí)間點(diǎn)之后的數(shù)據(jù),同時(shí)考慮到性能因素,將“產(chǎn)品-時(shí)間戳”的字典維護(hù)在服務(wù)器的本地緩存中?,F(xiàn)實(shí)環(huán)境中,產(chǎn)品基本信息的更新頻率一般都會(huì)以小時(shí)甚至天為單位。Job運(yùn)行的頻率可人為控制,正常情況下控制在分鐘級(jí)即可,經(jīng)過(guò)實(shí)際測(cè)試,當(dāng)產(chǎn)品數(shù)量為十萬(wàn)級(jí)時(shí),由于字典本身維護(hù)的數(shù)據(jù)量并不大,即使單臺(tái)服務(wù)器的負(fù)載也足以能夠承受。由于整體系統(tǒng)架構(gòu)采取集群模式,即使發(fā)生當(dāng)前服務(wù)器集群無(wú)法承受的情況,也可通過(guò)增加服務(wù)器數(shù)量,然后將所有產(chǎn)品重新平均分配到各個(gè)服務(wù)器上來(lái)解決。
2.2.2產(chǎn)品庫(kù)存及訂單處理流程設(shè)計(jì)
考慮到秒殺產(chǎn)品通常都以實(shí)物產(chǎn)品為主,其固有的成本壓力以及超低價(jià)吸引買(mǎi)家的營(yíng)銷(xiāo)模式?jīng)Q定了產(chǎn)品庫(kù)存數(shù)都是有限的,真正能夠成功下單的操作數(shù)相對(duì)有限,數(shù)據(jù)庫(kù)的寫(xiě)操作壓力相比讀操作要小很多。因此解決庫(kù)存更新以及訂單處理的基本思路是:先將庫(kù)存信息維護(hù)在緩存中,同時(shí)維護(hù)一個(gè)訂單隊(duì)列,通過(guò)單獨(dú)的服務(wù)處理此隊(duì)列中的訂單請(qǐng)求并完成最終的數(shù)據(jù)入庫(kù)操作[14]。庫(kù)存刷新及訂單處理的業(yè)務(wù)流程圖如圖4所示。
圖4 產(chǎn)品庫(kù)存及訂單管理業(yè)務(wù)流程圖
用戶在打開(kāi)產(chǎn)品頁(yè)面時(shí)首先從緩存中獲取產(chǎn)品的基本信息,包括產(chǎn)品售賣(mài)時(shí)間以及可售標(biāo)識(shí),這里的可售標(biāo)識(shí)僅表示當(dāng)前產(chǎn)品是否可以進(jìn)行銷(xiāo)售,并不維護(hù)實(shí)際的產(chǎn)品庫(kù)存數(shù)。當(dāng)秒殺活動(dòng)開(kāi)始后,用戶可以通過(guò)點(diǎn)擊“預(yù)訂”按鈕進(jìn)行搶購(gòu)。如果當(dāng)前產(chǎn)品庫(kù)存大于0,則用戶可以進(jìn)行后續(xù)預(yù)訂操作并更新庫(kù)存數(shù);若產(chǎn)品庫(kù)存數(shù)減為0后,需要額外刷新緩存中存儲(chǔ)的產(chǎn)品信息,將可售標(biāo)識(shí)置為False,以此表示產(chǎn)品不可繼續(xù)出售。如果用戶成功搶購(gòu)到產(chǎn)品,系統(tǒng)并不直接將用戶的預(yù)訂單寫(xiě)入數(shù)據(jù)庫(kù)中,而是先統(tǒng)一保存入一個(gè)訂單隊(duì)列之中,此訂單隊(duì)列本身也是存儲(chǔ)在緩存之中。產(chǎn)品下單Job的任務(wù)就是輪詢此訂單隊(duì)列,依次處理隊(duì)列中的預(yù)訂請(qǐng)求,將預(yù)訂信息寫(xiě)入數(shù)據(jù)庫(kù)中。由于秒殺產(chǎn)品數(shù)量是有限的,因此訂單隊(duì)列中的記錄數(shù)不能大于產(chǎn)品庫(kù)存數(shù)量,故通過(guò)獨(dú)立的Job服務(wù)進(jìn)行此類(lèi)集中的數(shù)據(jù)處理在性能上是可以保證的。當(dāng)用戶的訂單被同步入數(shù)據(jù)庫(kù)中之后,用戶可在專(zhuān)門(mén)的個(gè)人訂單頁(yè)面中看到自己的預(yù)訂信息并進(jìn)行最終的支付操作,至此整個(gè)秒殺過(guò)程全部完成。
在以上流程中,最關(guān)鍵的是維護(hù)產(chǎn)品的庫(kù)存信息,目前有些秒殺系統(tǒng)的做法是直接維護(hù)一個(gè)“產(chǎn)品ID-庫(kù)存”的鍵值對(duì)字典,并將數(shù)據(jù)存放在MemCached中,這種設(shè)計(jì)很可能導(dǎo)致性能瓶頸。因?yàn)橹苯邮褂卯a(chǎn)品ID作為Key,使得MemCached通過(guò)Key來(lái)計(jì)算 Hash值得到目標(biāo)存儲(chǔ)服務(wù)器時(shí)每次都是相同的結(jié)果,即指定產(chǎn)品一定會(huì)被存放在固定的一臺(tái)服務(wù)器上,當(dāng)此產(chǎn)品出現(xiàn)高并發(fā)訪問(wèn)時(shí),存放該產(chǎn)品庫(kù)存鍵值對(duì)的緩存服務(wù)器必將承受極大負(fù)載。為了避免類(lèi)似的單點(diǎn)服務(wù)可能造成的系統(tǒng)瓶頸,本文對(duì)于秒殺產(chǎn)品的庫(kù)存信息維護(hù)做了適當(dāng)?shù)膬?yōu)化,在設(shè)計(jì)鍵值對(duì)時(shí)采用“服務(wù)器標(biāo)識(shí)+產(chǎn)品”作為 Key,這樣即使是同一個(gè)產(chǎn)品由于Key不同最終可以得到不同的Hash值,使得數(shù)據(jù)會(huì)被存儲(chǔ)到不同的緩存服務(wù)器上,以此達(dá)到分布式存儲(chǔ)的目的。
基于本方案的秒殺系統(tǒng)無(wú)論在對(duì)產(chǎn)品內(nèi)容展示還是庫(kù)存及訂單處理上,都具有較強(qiáng)的可靠性。為驗(yàn)證該解決方案的具體性能特進(jìn)行以下實(shí)驗(yàn)。
測(cè)試樣本為10個(gè)秒殺產(chǎn)品,每個(gè)產(chǎn)品庫(kù)存數(shù)為1 000;測(cè)試緩存包含4臺(tái)WWW服務(wù)器,2臺(tái)應(yīng)用服務(wù)器,2臺(tái)緩存服務(wù)器和1臺(tái)數(shù)據(jù)庫(kù)服務(wù)器。為測(cè)試方便,本測(cè)試中所有服務(wù)器采用相同配置,均為4核CPU,內(nèi)存為16 GB。服務(wù)器事務(wù)操作性能對(duì)比如圖5所示。由圖可見(jiàn),在高并發(fā)情況下系統(tǒng)的壓力瓶頸主要來(lái)自于WWW服務(wù)器,在達(dá)到10萬(wàn)個(gè)并發(fā)數(shù)的情況下WWW服務(wù)器的CPU占用率已經(jīng)達(dá)到了90%以上,而此時(shí)應(yīng)用服務(wù)器和緩存服務(wù)器仍有空閑資源;同時(shí)由于絕大部分操作均在前端服務(wù)實(shí)現(xiàn),數(shù)據(jù)庫(kù)服務(wù)器的CPU占用率始終保持平緩,不隨并發(fā)數(shù)增加而暴增。通過(guò)長(zhǎng)期測(cè)試,在系統(tǒng)實(shí)際部署中推薦將WWW服務(wù)器與應(yīng)用服務(wù)器數(shù)量按照3:1比例進(jìn)行配置,可以使得整個(gè)系統(tǒng)達(dá)到最大的并發(fā)訪問(wèn)承受力。
圖5 服務(wù)器事務(wù)操作性能
身處互聯(lián)網(wǎng)時(shí)代,網(wǎng)上購(gòu)物已經(jīng)逐步成為億萬(wàn)網(wǎng)民主流的購(gòu)物方式,而秒殺、搶購(gòu)類(lèi)的網(wǎng)絡(luò)營(yíng)銷(xiāo)模式也越來(lái)越受到電商和網(wǎng)民共同的關(guān)注和推崇。本文正是基于此類(lèi)應(yīng)用的巨大市場(chǎng)發(fā)展?jié)摿Γ瑢?zhuān)門(mén)針對(duì)秒殺系統(tǒng)的特點(diǎn),從系統(tǒng)架構(gòu)和業(yè)務(wù)流程兩大方面分析和設(shè)計(jì)了一套具有高并發(fā)性、高可靠性和安全性的互聯(lián)網(wǎng)秒殺應(yīng)用系統(tǒng),基本滿足了電商平臺(tái)對(duì)于秒殺應(yīng)用的實(shí)際需求。同時(shí)對(duì)高并發(fā)性系統(tǒng)中的緩存技術(shù)的實(shí)際應(yīng)用以及秒殺系統(tǒng)的公平性等進(jìn)行了探討,實(shí)際上這兩點(diǎn)都是秒殺系統(tǒng)設(shè)計(jì)中的重點(diǎn)和難點(diǎn),目前尚未有完美的解決方案,還需要進(jìn)一步研究。
[1]中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心.中文互聯(lián)網(wǎng)數(shù)據(jù)資訊中心[EB/OL].[2014-01-16].http://www.199it.com/archives/187745.html.
[2]張小紅.電子商務(wù)營(yíng)銷(xiāo)策略之秒殺[J].機(jī)械管理開(kāi)發(fā),2011(2):150-151.
[3]甘桂梅.基于 Web應(yīng)用的緩存技術(shù)概述[J].中國(guó)科技信息,2010(17):95-96.
[4]薛質(zhì),彭海平.電子商務(wù)平臺(tái)的性能優(yōu)化和高可靠性研究與實(shí)現(xiàn)[D].上海:上海交通大學(xué),2007.
[5]賴建峰,林永怡.服務(wù)器集群技術(shù)在數(shù)字化校園中的應(yīng)用[J].硅谷,2011(9):136.
[6]段趙磊,黃艷.彈性 Web Cache集群的自適應(yīng)負(fù)載均衡策略[J].小型微型計(jì)算機(jī)系統(tǒng),2013,34(7):1527-1530.
[7]裴麗麗.基于 B2C模式的電子商務(wù)平臺(tái)系統(tǒng)設(shè)計(jì)和實(shí)現(xiàn)[D].上海:同濟(jì)大學(xué),2009.
[8]包立輝,黃彥飛.高并發(fā)網(wǎng)站的架構(gòu)研究及解決方案[J].計(jì)算機(jī)科學(xué),2012,39(10):184-187.
[9]程春蕊,劉萬(wàn)軍.基于數(shù)據(jù)庫(kù)緩存的 Web應(yīng)用性能優(yōu)化解決方案[J].世界科技研究與發(fā)展,2009,31(4):603-604,640.
[10]王鑫.基于動(dòng)態(tài)緩存的電子商務(wù)平臺(tái)優(yōu)化研究 [D].青島:山東科技大學(xué),2004.
[11]蔡志珂,閻潔.基于緩存框架的 Web緩存研究[J].電腦知識(shí)與技術(shù),2009,5(31):8737-8739.
[12]王春娟.基于緩存技術(shù)的 Web應(yīng)用性能優(yōu)化研究[J].電腦知識(shí)與技術(shù),2008,1(3):438-440.
[13]張旺俊.Web緩存替換策略與預(yù)取技術(shù)的研究 [D].合肥:中國(guó)科學(xué)技術(shù)大學(xué),2011.
[14]郭世亮.一種高并發(fā)競(jìng)爭(zhēng)庫(kù)存的訂單處理系統(tǒng)及其處理方法[P].中國(guó):CN201310301455.2,2013-12-04.
Design and im plementation of an ecommerce-oriented seckill system
Shao Fei
(Shanghai Clearing House,Shanghai 200002,China)
According to the characteristics of Internet service,this paper put forward an ecommerce-oriented seckill system design from the concurrency,expansibility and security.It analyzed the business features of seckill system,designed an appropriate business system and provided the concrete implementation of primary business process.The seckill system can achieve the goals of high-concurrency,high-reliability,expansibility and high-security based on the architecture.
seckill;ecommerce;high-concurrency
TP311
A
1674-7720(2015)06-0084-04
2014-10-31)
邵斐(1982-),男,通信作者,碩士,主要研究方向:互聯(lián)網(wǎng)商務(wù)應(yīng)用系統(tǒng)設(shè)計(jì)。E-mail:shawfree@163.com。