基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法
【專利摘要】本發(fā)明公開(kāi)了一種基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法,具體通過(guò)前臺(tái)定時(shí)對(duì)其存貨信息進(jìn)行更新,采取先到先服務(wù)和Least?Recently?Used原則,動(dòng)態(tài)更新B2C平臺(tái)的存貨數(shù)量,保持前端與后臺(tái)數(shù)據(jù)一致,在訂單突發(fā)增加的情況下,可以對(duì)后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行負(fù)載均衡且縮減了數(shù)據(jù)量,加快了處理速度。本發(fā)明的方法可以實(shí)現(xiàn)對(duì)于網(wǎng)上B2B交易平臺(tái),前臺(tái)需要同時(shí)面對(duì)多個(gè)商場(chǎng)或B2C交易平臺(tái)的交易請(qǐng)求,后臺(tái)數(shù)據(jù)庫(kù)為保持?jǐn)?shù)據(jù)的一致性,同一時(shí)刻只能有一個(gè)請(qǐng)求操作數(shù)據(jù)庫(kù),對(duì)庫(kù)存進(jìn)行增加減少操作。
【專利說(shuō)明】基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于電子信息【技術(shù)領(lǐng)域】,涉及電子商務(wù)中的大數(shù)據(jù)和云計(jì)算應(yīng)用,具體涉及一種基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法。
【背景技術(shù)】
[0002]在常見(jiàn)的購(gòu)物網(wǎng)站中,為節(jié)約成本,某些網(wǎng)站店鋪或網(wǎng)站整體自身并不進(jìn)行倉(cāng)庫(kù)以及后臺(tái)數(shù)據(jù)維護(hù),僅僅對(duì)其前臺(tái)進(jìn)行設(shè)計(jì)實(shí)現(xiàn),而將后臺(tái)維護(hù)(包括但不限于訂單增加、數(shù)據(jù)庫(kù)存貨管理、物流管理)交付B2B專業(yè)平臺(tái)進(jìn)行處理(具體如圖1所示),這就對(duì)B2B平臺(tái)的處理效率提出了較高要求。
[0003]現(xiàn)有的解決方案大多面向B2C和C2C應(yīng)用,無(wú)法處理B2B環(huán)境下數(shù)據(jù)大量且集中的請(qǐng)求,也無(wú)法對(duì)大量的前臺(tái)進(jìn)行數(shù)據(jù)更新。由于前臺(tái)B2C交易平臺(tái)無(wú)法操作后臺(tái)數(shù)據(jù),因此可能會(huì)存在前后臺(tái)數(shù)據(jù)不一致的情況,導(dǎo)致用戶的訂單有比較大的幾率被拒絕。當(dāng)前臺(tái)請(qǐng)求過(guò)多時(shí),后臺(tái)無(wú)法及時(shí)處理,造成請(qǐng)求積壓,以致平臺(tái)性能大幅下降。
【發(fā)明內(nèi)容】
[0004]為解決現(xiàn)有技術(shù)存在的上述問(wèn)題,本發(fā)明提出了一種基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法。
[0005]本發(fā)明所采用的具體技術(shù)方案為:一種基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法,包括如下步驟:
[0006]S1.依據(jù)貨品關(guān)聯(lián)性對(duì)后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行拆分,將關(guān)聯(lián)性大于預(yù)先設(shè)定閾值的貨物放在同一個(gè)數(shù)據(jù)庫(kù)進(jìn)行管理;
[0007]S2.前臺(tái)定時(shí)對(duì)其存貨信息進(jìn)行更新,采取先到先服務(wù)(FIFS (First Come FirstService))和Least Recently Used原則,即先發(fā)的請(qǐng)求先響應(yīng)處理,但隊(duì)列中若有大于預(yù)先設(shè)定時(shí)間的未處理的其他請(qǐng)求(若有比隊(duì)首任務(wù)更長(zhǎng)時(shí)間未被處理的任務(wù))則優(yōu)先進(jìn)行處理,使得每個(gè)前臺(tái)網(wǎng)站均有盡可能新的存貨信息;
[0008]S3.在進(jìn)行訂單接收時(shí),如果后臺(tái)出現(xiàn)數(shù)據(jù)積壓,那么前臺(tái)開(kāi)始訂單合并,將同一商品的請(qǐng)求合并為一條,減少后臺(tái)工作量;
[0009]S4.在進(jìn)行數(shù)據(jù)庫(kù)更新時(shí),如果操作無(wú)法完成,即訂單需求數(shù)大于存貨數(shù)量,則進(jìn)行回滾,并通知前臺(tái)該操作無(wú)法完成。
[0010]本發(fā)明的有益效果:本發(fā)明的方法通過(guò)前臺(tái)定時(shí)對(duì)其存貨信息進(jìn)行更新,采取先到先服務(wù)(FIFS (First Come First Service))和 Least Recently Used 原則,可以動(dòng)態(tài)更新B2C平臺(tái)的存貨數(shù)量,保持前端與后臺(tái)數(shù)據(jù)一致,在訂單突發(fā)增加的情況下,可以對(duì)后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行負(fù)載均衡且縮減了數(shù)據(jù)量,加快了處理速度。本發(fā)明的方法可以實(shí)現(xiàn)對(duì)于網(wǎng)上B2B交易平臺(tái),前臺(tái)需要同時(shí)面對(duì)多個(gè)商場(chǎng)或B2C交易平臺(tái)的交易請(qǐng)求,后臺(tái)數(shù)據(jù)庫(kù)為保持?jǐn)?shù)據(jù)的一致性,同一時(shí)刻只能有一個(gè)請(qǐng)求操作數(shù)據(jù)庫(kù),對(duì)庫(kù)存進(jìn)行增加減少操作。【專利附圖】
【附圖說(shuō)明】
[0011]圖1為現(xiàn)有的B2B專業(yè)平臺(tái)處理流程示意圖。
[0012]圖2為本發(fā)明的方法處理流程示意圖。
【具體實(shí)施方式】
[0013]下面結(jié)合附圖對(duì)本發(fā)明的實(shí)施例做進(jìn)一步的說(shuō)明。
[0014]本實(shí)施例提供的基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法,流程示意圖如圖2所示,包括如下步驟:
[0015]S1.依據(jù)貨品關(guān)聯(lián)性對(duì)后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行拆分,將關(guān)聯(lián)性大于預(yù)先設(shè)定閾值的貨物放在同一個(gè)數(shù)據(jù)庫(kù)進(jìn)行管理,由于訂單操作而進(jìn)行數(shù)據(jù)庫(kù)數(shù)據(jù)更新時(shí),可以將負(fù)載分?jǐn)偟讲煌姆?wù)器;
[0016]S2.前臺(tái)定時(shí)對(duì)其存貨信息進(jìn)行更新,采取先到先服務(wù)(FIFS (First Come FirstService))和Least Recently Used原則,即先發(fā)的請(qǐng)求先響應(yīng)處理,但隊(duì)列中若有大于預(yù)先設(shè)定時(shí)間的未處理的其他請(qǐng)求則優(yōu)先進(jìn)行處理,使得每個(gè)前臺(tái)網(wǎng)站均有盡可能新的存貨
信息;
[0017]S3.在進(jìn)行訂單接收時(shí),如果后臺(tái)出現(xiàn)數(shù)據(jù)積壓,那么前臺(tái)開(kāi)始訂單合并,將同一商品的請(qǐng)求合并為一條,減少后臺(tái)工作量;
[0018]S4.在進(jìn)行數(shù)據(jù)庫(kù)更新時(shí),如果操作無(wú)法完成,即訂單需求數(shù)大于存貨數(shù)量,則進(jìn)行回滾,并通知前臺(tái)該操作無(wú)法完成。
[0019]下面結(jié)合一實(shí)施例具體說(shuō)明,具體場(chǎng)景如下:
[0020]1.后臺(tái)數(shù)據(jù)庫(kù)分為η個(gè),每個(gè)負(fù)責(zé)大約為(I/η)的數(shù)據(jù)處理;
[0021]2.商品定為Ι-m的m個(gè)數(shù);
[0022]3.前臺(tái)B2C平臺(tái)共有a個(gè);
[0023]4.每個(gè)B2C平臺(tái)有b[i]個(gè)(第i個(gè)平臺(tái))產(chǎn)品
[0024]數(shù)據(jù)更新:更新數(shù)據(jù)時(shí),每個(gè)平臺(tái)都會(huì)定時(shí)向數(shù)據(jù)庫(kù)詢問(wèn)更新,每條記錄更新時(shí)間平均為t秒,則第i個(gè)平臺(tái)一次更新時(shí)間為:t*b[i]秒,對(duì)每個(gè)數(shù)據(jù)庫(kù)的壓力約為t*b[i]/η秒,該壓力不能被分片。
[0025]由于更新間隔由前臺(tái)平臺(tái)控制,不受Β2Β平臺(tái)控制,因此要考慮更新排序問(wèn)題,若短時(shí)間內(nèi)平臺(tái)請(qǐng)求到達(dá)順序?yàn)?數(shù)字為前端平臺(tái)編號(hào)):
[0026]1234156278219
[0027]根據(jù)FIFS和LRU原則,每次響應(yīng)最久沒(méi)響應(yīng)的,且先到先響應(yīng),同一個(gè)前臺(tái)積壓請(qǐng)求過(guò)多時(shí)進(jìn)行拒絕服務(wù),對(duì)前臺(tái)的響應(yīng)順序?yàn)?不考慮處理過(guò)程中新加入隊(duì)列的請(qǐng)求):
[0028]1234567891212
[0029]每次響應(yīng)更新處理時(shí),前端網(wǎng)關(guān)服務(wù)器進(jìn)行查詢隊(duì)列管理、任務(wù)分發(fā)以及查詢后的數(shù)據(jù)打包任務(wù)。后臺(tái)數(shù)據(jù)庫(kù)有可能在同一時(shí)間對(duì)不同的前臺(tái)平臺(tái)提供服務(wù)(網(wǎng)關(guān)服務(wù)器任務(wù)拆分時(shí)考慮后臺(tái)負(fù)載,但會(huì)一次分發(fā)多個(gè)請(qǐng)求)。
[0030]訂單處理:每種產(chǎn)品以相同概率加入訂單,每個(gè)訂單有平均d個(gè)產(chǎn)品,每單加入時(shí)間平均為e,時(shí)間f內(nèi)單數(shù)為f/e,f時(shí)間內(nèi)產(chǎn)品數(shù)為df/e,由于訂單合并,該數(shù)量可以降為pdf/e, P為縮減比例,該比例與數(shù)據(jù)量、時(shí)間長(zhǎng)度等有關(guān)。[0031]時(shí)間f內(nèi)對(duì)每個(gè)數(shù)據(jù)庫(kù)的平均壓力為pdft/en秒,該f越大,p越小,平臺(tái)處理效率越高,但產(chǎn)生數(shù)據(jù)庫(kù)沖突的可能性也會(huì)增加(訂單和大于存貨量)。
[0032]訂單壓縮大致如下,假設(shè)訂單商品順序如下(字母為商品):
[0033]gsgfgdsgdsgfsdfnsiudxbiubydcubfdncefdivbuy
[0034]可以壓縮為:g5s5f5d7nli3u4xlb4y2c2nlelvl
[0035]42條數(shù)據(jù)庫(kù)操作可以縮減為14條,分擔(dān)到η個(gè)后臺(tái)數(shù)據(jù)庫(kù)后,效率可以提升η/ρ倍(不考慮網(wǎng)關(guān)服務(wù)器負(fù)載)。
[0036]數(shù)據(jù)回滾:發(fā)生數(shù)據(jù)庫(kù)庫(kù)存不夠時(shí),進(jìn)行數(shù)據(jù)回滾,回滾時(shí)要將合并的訂單拆分,影響到的同一訂單的其他商品一并回滾,然后根據(jù)數(shù)據(jù)庫(kù)庫(kù)存進(jìn)行規(guī)劃,無(wú)法規(guī)劃的訂單返回失敗。
【權(quán)利要求】
1.一種基于云服務(wù)平臺(tái)對(duì)接的線程自動(dòng)優(yōu)化調(diào)度方法,包括如下步驟: S1.依據(jù)貨品關(guān)聯(lián)性對(duì)后臺(tái)數(shù)據(jù)庫(kù)進(jìn)行拆分,將關(guān)聯(lián)性大于預(yù)先設(shè)定閾值的貨物放在同一個(gè)數(shù)據(jù)庫(kù)進(jìn)行管理; S2.前臺(tái)定時(shí)對(duì)其存貨信息進(jìn)行更新,采取先到先服務(wù)(FIFS(FirstCome FirstService))和Least Recently Used原則,即先發(fā)的請(qǐng)求先響應(yīng)處理,但隊(duì)列中若有大于預(yù)先設(shè)定時(shí)間的未處理的其他請(qǐng)求(若有比隊(duì)首任務(wù)更長(zhǎng)時(shí)間未被處理的任務(wù))則優(yōu)先進(jìn)行處理,使得每個(gè)前臺(tái)網(wǎng)站均有盡可能新的存貨信息; S3.在進(jìn)行訂單接收時(shí),如果后臺(tái)出現(xiàn)數(shù)據(jù)積壓,那么前臺(tái)開(kāi)始訂單合并,將同一商品的請(qǐng)求合并為一條,減少后臺(tái)工作量; S4.在進(jìn)行數(shù)據(jù)庫(kù)更新時(shí),如果操作無(wú)法完成,即訂單需求數(shù)大于存貨數(shù)量,則進(jìn)行回滾,并通知前臺(tái)該操作無(wú)法完成。
【文檔編號(hào)】G06Q30/06GK103971185SQ201410239217
【公開(kāi)日】2014年8月6日 申請(qǐng)日期:2014年5月30日 優(yōu)先權(quán)日:2014年5月30日
【發(fā)明者】秦隆, 陳崢, 梁恒, 李富強(qiáng) 申請(qǐng)人:成都德邁安科技有限公司