偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何從0組建一個(gè)日訂單40萬(wàn)的智能化派單系統(tǒng)?

原創(chuàng)
開(kāi)發(fā) 前端
如果讓你從 0 組建一個(gè)智能化派單系統(tǒng),日訂單量為 40W,你敢接單嗎?你會(huì)怎么做?

【51CTO.com原創(chuàng)稿件】如果讓你從 0 組建一個(gè)智能化派單系統(tǒng),日訂單量為 40W,你敢接單嗎?你會(huì)怎么做?

做過(guò)的人都會(huì)說(shuō)簡(jiǎn)單,沒(méi)有做過(guò)的人卻連想都不敢想,其實(shí)技術(shù)上并沒(méi)有太大的差距,差就差在“做過(guò)一次”的經(jīng)驗(yàn)。

聽(tīng)別人講述自己的經(jīng)歷,也是積攢經(jīng)驗(yàn)的一種好方法。我們?cè)?qǐng)快狗打車高級(jí)經(jīng)理胡顯波講述他的職業(yè)生涯,他講述了快狗打車的派單系統(tǒng)從 0 到智能化的演進(jìn)。

下面是整理的文字版,希望您看了能有所啟發(fā)。

石器時(shí)代

單一拆分?jǐn)?shù)據(jù)庫(kù)、業(yè)務(wù)解耦

由于快狗打車是 58 同城當(dāng)時(shí)孵化的 N 個(gè)業(yè)務(wù)線之一,并且短短三周就已上線,最初的版本包含了用戶側(cè) App、商家 App、管理后臺(tái)三個(gè)模塊。

 

上圖所示的是業(yè)務(wù)孵化期整體系統(tǒng)架構(gòu),采用的是的單一數(shù)據(jù)庫(kù)模式,與其他業(yè)務(wù)公用數(shù)據(jù)庫(kù),節(jié)省成本,這樣做是為了快速驗(yàn)證市場(chǎng)對(duì)業(yè)務(wù)接受度。

 

上圖所示是業(yè)務(wù)孵化期的派單系統(tǒng),可以理解為一個(gè)單元運(yùn)作。系統(tǒng)核心部分是 OrderPushJar,訂單創(chuàng)建、推送等派單邏輯都在這里進(jìn)行處理。

 

這個(gè)階段訂單調(diào)度原理很簡(jiǎn)單,就是由推送框架 MQTT,把訂單推送給設(shè)定范圍內(nèi)所有司機(jī),司機(jī)憑手速接單,單單都有補(bǔ)貼旨在快速搶占市場(chǎng),這對(duì)平臺(tái)而言是龐大的浪費(fèi)。

快狗打車上線之后,市場(chǎng)反響非常好,業(yè)務(wù)也在短短三個(gè)月增長(zhǎng)了一萬(wàn)單。但此時(shí)數(shù)據(jù)庫(kù)達(dá)到瓶頸,字段冗余、數(shù)據(jù)庫(kù)索引有效性等問(wèn)題凸顯,沒(méi)辦法支持多業(yè)務(wù)的發(fā)展,某個(gè)子業(yè)務(wù)做上線下線等操作時(shí),“同源”業(yè)務(wù)也會(huì)受到影響。

 

上圖是針對(duì)數(shù)據(jù)庫(kù)瓶頸的解決方案,把快狗打車的數(shù)據(jù)庫(kù),從耦合的業(yè)務(wù)數(shù)據(jù)庫(kù)中拆分出來(lái)。方案中采用雙向同步模式來(lái)業(yè)務(wù)不停服的情況下進(jìn)行數(shù)據(jù)遷移。

整體遷移后,快狗打車整體系統(tǒng)大致分成訂單、結(jié)算、配置、軌跡等模塊,每一個(gè)模塊都有對(duì)應(yīng)單獨(dú)數(shù)據(jù)庫(kù),這樣就很好的避免了業(yè)務(wù)之間的耦合,軌跡服務(wù)數(shù)據(jù)庫(kù)出現(xiàn)異常,并不會(huì)影響其他業(yè)務(wù)流程。

鐵器時(shí)代

雙推送通道、象限推送

2015 年,快狗打車進(jìn)入高速發(fā)展階段,市面上也出現(xiàn)了很多同類競(jìng)品,如藍(lán)犀牛、1 號(hào)貨的及云鳥(niǎo)等。市場(chǎng)爭(zhēng)奪戰(zhàn)進(jìn)入白熱化階段,快狗打車采用大量訂單補(bǔ)貼的方式來(lái)提升市場(chǎng)占有率,產(chǎn)品方面也是爭(zhēng)分奪秒的進(jìn)行迭代,搶占市場(chǎng)先機(jī)。

 

上圖是業(yè)務(wù)高速發(fā)展時(shí)期的系統(tǒng)架構(gòu)。App、PC 及其他第三方渠道進(jìn)入到 OrderCenterServer(訂單中心),OrderCenterServer 會(huì)根據(jù)具體職責(zé)進(jìn)入業(yè)務(wù)的模塊化,分成了像結(jié)算、支付、推送、司機(jī)任務(wù)等模塊。

為保證訂單能夠盡快被司機(jī)接收到以及保證消息推送到達(dá)率,快狗打車采用自研 TCP 通道與 GeTui 和 MiPush 等三方通道相結(jié)合。根據(jù)司機(jī)的手機(jī)品牌擇優(yōu)選擇 GeTui 或 MiPush 通道,加上自研的 TCP 通道,保證消息的到達(dá)率。

 

這個(gè)階段訂單調(diào)度原是按照不同的象限方式進(jìn)行予以推送,訂單產(chǎn)生時(shí)會(huì)先在附近 X 公里范圍之內(nèi),尋找滿足該需求的司機(jī),進(jìn)行推單。如果無(wú)人搶單便加部分補(bǔ)貼,激發(fā)司機(jī)的搶單意愿。

如上圖所示,會(huì)采用象限推送的模式,如果沒(méi)人搶單,就增加部分補(bǔ)貼,延象限進(jìn)行推送,如果搶單人數(shù)達(dá)到一定上限,就回降低部分補(bǔ)貼。

在指派司機(jī)的環(huán)節(jié),根據(jù)搶單司機(jī)的距離、好評(píng)率、歷史訂單完成率等核心評(píng)估指標(biāo)進(jìn)行擇優(yōu)指派,這種簡(jiǎn)單的方法既減少了平臺(tái)派發(fā)無(wú)效補(bǔ)貼的浪費(fèi),又有效避免了憑速度搶單的惡意競(jìng)爭(zhēng),進(jìn)而提升了整個(gè)平臺(tái)的訂單完成率。

智能時(shí)代

大數(shù)據(jù)平臺(tái)引入到智能化

2016 年,快狗打車成為行業(yè)佼佼者,進(jìn)入了平穩(wěn)期,這時(shí)更多考慮的是平臺(tái)補(bǔ)貼如何高效,起到真正補(bǔ)貼的作用、如何盡量滿足用戶的需求、如何分配司機(jī)的收益。

進(jìn)而效率提升成為這一年的整體目標(biāo),主要做了引入大數(shù)據(jù)平臺(tái)、智能派單算法和智能分流框架等內(nèi)容。

第一步:數(shù)據(jù)收集

 

如上圖,App 用戶使用數(shù)據(jù)、H5 端日志操作,Server 端用戶請(qǐng)求日志等數(shù)據(jù)進(jìn)行收集并通過(guò)日志中心組進(jìn)行上報(bào),匯集到日志中心,利用 Flume 和 Kafka 同步到大數(shù)據(jù)平臺(tái)。DB 則是通過(guò) DTS 和 Canal 形式,也引入到大數(shù)據(jù)平臺(tái)。

第二步:智能模型訓(xùn)練

 

如上圖,是智能模型的訓(xùn)練邏輯。最底層是收集信息:

  • 訂單的信息,包括:始發(fā)地、目的地、以及價(jià)格。
  • 用戶的信息,包括:用戶位置、以及對(duì)于價(jià)格的敏感度。
  • 司機(jī)的信息,包括:接單的意愿等。
  • 客戶和司機(jī)的關(guān)系信息,包括:兩者能夠相匹配的標(biāo)準(zhǔn)。
  • 整體訂單的推送和接單場(chǎng)景等信息。

憑借著歸一化&分桶、XGBoost、特征組合、編碼等大數(shù)據(jù)手段,進(jìn)行模型訓(xùn)練,目前擁有約 80 萬(wàn)的數(shù)據(jù)模型用于整體的業(yè)務(wù)流程。

接下來(lái),通過(guò)具體場(chǎng)景來(lái)詮釋大數(shù)據(jù)的智能化派單系統(tǒng)的應(yīng)用,涉及主要場(chǎng)景有計(jì)價(jià)、推單、中單等。

場(chǎng)景一:計(jì)價(jià)

先分享計(jì)價(jià)場(chǎng)景,是因?yàn)闊o(wú)論是打車用戶還是司機(jī),對(duì)于價(jià)格都是很敏感的。

 

具體說(shuō)來(lái):用戶先上來(lái)詢價(jià),根據(jù)詢價(jià)信息給予用戶一定的優(yōu)惠 A 元,同時(shí)也要據(jù)此來(lái)補(bǔ)貼司機(jī) B 元,另外,在定價(jià) C 元的基礎(chǔ)上,快狗打車還要通過(guò)一定的抽傭 D 元,來(lái)保證平臺(tái)的運(yùn)營(yíng)。

那么該如何計(jì)算 ABCD 之間的關(guān)系呢?顯然,在保證整體搶單率的情況下,應(yīng)使得 A 和 B 盡可能的小。

 

也就是說(shuō),在盡量降低平臺(tái)補(bǔ)貼的前提下,根據(jù)給定補(bǔ)貼的預(yù)算情況,來(lái)提高搶單率。

 

根據(jù)上述兩個(gè)計(jì)價(jià)模型,不難發(fā)現(xiàn):為了保證訂單的完成率,至少要保證兩個(gè)司機(jī)的搶單:通過(guò)對(duì)司機(jī)和用戶的行為分析,要掌握司機(jī)對(duì)于訂單大致的接受價(jià)位;同時(shí),也會(huì)通過(guò)整體的接單司機(jī)數(shù)量,來(lái)反過(guò)來(lái)驗(yàn)證該模型的有效性。

 

上述優(yōu)惠模型是分析用戶流失率的手段。根據(jù)用戶每天的活躍度,訂單價(jià)值貢獻(xiàn)等,能夠獲悉:可能由于某些原因,用戶存在流失的風(fēng)險(xiǎn),就應(yīng)該通過(guò)平臺(tái)發(fā)券的方式將他刺激用戶的回流。

場(chǎng)景二:推單

 

上圖是一個(gè)接單的場(chǎng)景。把訂單推送給愿意接單的司機(jī),既能降低用戶的等待時(shí)間、提升用戶的滿意度,又能通過(guò)訂單的成單率,來(lái)提升司機(jī)的興趣度。

 

那么司機(jī)的接單意愿又是從何而來(lái)呢?其中包括:訂單與司機(jī)之間的距離、訂單的價(jià)格、小費(fèi)&補(bǔ)貼、以及起點(diǎn)&終點(diǎn)等方面。

平臺(tái)通過(guò)大規(guī)模的邏輯回歸,可以計(jì)算出附近司機(jī)的接單意愿,進(jìn)而推送給相應(yīng)的司機(jī)。

場(chǎng)景三:中單

 

在中單場(chǎng)景中,如果有 50 位司機(jī)搶單,那么哪位司機(jī)的好評(píng)率、距離、服務(wù)態(tài)度、以及是否愿意免費(fèi)搬運(yùn)等策略最為切合,誰(shuí)就能夠“中簽”。

 

此處的服務(wù)模型相對(duì)較為簡(jiǎn)單,主要涉及到距離、等級(jí)、評(píng)分、耦合度等指標(biāo)。

 

為了防止一些假司機(jī)來(lái)擾亂平臺(tái)秩序,快狗打車通過(guò):設(shè)備交叉、訂單軌跡、客司金額分配、以及虛擬識(shí)別等手段,來(lái)識(shí)別訂單中的作弊概率。如果發(fā)現(xiàn)有作弊的訂單,平臺(tái)會(huì)對(duì)用戶和司機(jī)予以懲罰。

場(chǎng)景四:整體運(yùn)營(yíng)

 

如上圖,是整體運(yùn)用場(chǎng)景。

  • 在用戶下單時(shí),快狗打車運(yùn)用訂單的定價(jià)模型,來(lái)確定用戶是否需要調(diào)價(jià)、優(yōu)惠、或是補(bǔ)貼。
  • 在系統(tǒng)推送時(shí),快狗打車預(yù)測(cè)司機(jī)的接單意愿,以及推送的順序。
  • 在司機(jī)搶單時(shí),快狗打車預(yù)測(cè)整體的接單人數(shù),一旦人數(shù)到達(dá)上限,就會(huì)通過(guò)降低訂單補(bǔ)貼等方式進(jìn)行動(dòng)態(tài)微調(diào)。
  • 在訂單指派時(shí),快狗打車也會(huì)預(yù)測(cè)司機(jī)的完成概率,并獲取司機(jī)的質(zhì)量度。
  • 在訂單完成后,快狗打車會(huì)預(yù)測(cè)用戶是否流失,并根據(jù)其留存價(jià)值,來(lái)確定是否給他更多的優(yōu)惠。

 

上圖展示的是整體派單側(cè)的架構(gòu)。核心在于策略應(yīng)用服務(wù)側(cè)、通用邏輯服務(wù)層,以及底層數(shù)據(jù)服務(wù)側(cè)的劃分。

 

上圖展示的是智能派單的核心流程。左側(cè)的核心模塊是特征數(shù)據(jù),它經(jīng)由數(shù)據(jù)的收集與訓(xùn)練,得到相應(yīng)的特征數(shù)據(jù)值。通過(guò)特征匹配系統(tǒng),將數(shù)據(jù)應(yīng)用到整體的業(yè)務(wù)系統(tǒng)中。同時(shí)這里的訂單隊(duì)列引擎和司機(jī)隊(duì)列引擎,根據(jù)訂單狀態(tài)的實(shí)時(shí)變化,將訂單推送給司機(jī)。

 

另外,通過(guò)業(yè)務(wù)監(jiān)督平臺(tái),來(lái)保證新的模型、或算法在上線時(shí)得到相應(yīng)的分流與監(jiān)測(cè)。具體而言,根據(jù)用戶的設(shè)備特點(diǎn),來(lái)模擬流量的分配,進(jìn)而實(shí)時(shí)地得到數(shù)據(jù)上報(bào)。

例如:用戶是否僅在詢價(jià)階段完成后就流失了。倘若流失率較高的話,就會(huì)通過(guò)實(shí)時(shí)報(bào)告將線上新的分流設(shè)置關(guān)閉掉。

接下來(lái)分享快狗打車的的監(jiān)控平臺(tái),具體的定義如下三點(diǎn):

  • 算法需要穩(wěn)定的系統(tǒng)支撐
  • 業(yè)務(wù)的波動(dòng)要第一時(shí)間知悉
  • 提高問(wèn)題排查效率就是在挽回?fù)p失

 

如上圖,是快狗打車側(cè)立體化監(jiān)控部分截屏,涉及關(guān)鍵字監(jiān)控、接口監(jiān)控、流量,端口、JVM、CPU,線程、緩存、DB 等監(jiān)控。

業(yè)務(wù)指標(biāo)監(jiān)控包含訂單整體波動(dòng)以及補(bǔ)貼整體波動(dòng)等。訂單波動(dòng)就是對(duì)附近平均司機(jī)數(shù)量,推單波動(dòng)進(jìn)行監(jiān)控。補(bǔ)貼波動(dòng)就是對(duì)用戶和司機(jī)的補(bǔ)貼實(shí)時(shí)投放的數(shù)據(jù)進(jìn)行監(jiān)控。這些核心業(yè)務(wù)指標(biāo)監(jiān)控需要做到實(shí)時(shí)反饋,有波動(dòng)第一時(shí)間告警。

如果優(yōu)惠券訂單數(shù)為什么突然間在暴漲?補(bǔ)貼訂單數(shù)為什么突然之間下降?等等這些核心業(yè)務(wù)指標(biāo)監(jiān)控需要做到實(shí)時(shí)反饋。

總結(jié)

2014 年至今,一路走來(lái)快狗打車團(tuán)隊(duì)不斷壯大,業(yè)務(wù)也是不斷地迭代和優(yōu)化,最后總結(jié)如下幾點(diǎn):

  • 架構(gòu)與團(tuán)隊(duì)、業(yè)務(wù)對(duì)齊,保持服務(wù)的持續(xù)演進(jìn),以響應(yīng)業(yè)務(wù)的快速變化
  • 建議使用雙推送通道,保證推送的到達(dá)率
  • 監(jiān)控很重要,第一時(shí)間發(fā)現(xiàn)問(wèn)題,減少影響
  • 持續(xù)提升,團(tuán)隊(duì)的能力,要跟得上業(yè)務(wù)的節(jié)奏

【51CTO原創(chuàng)稿件,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文作者和出處為51CTO.com】

 

責(zé)任編輯:武曉燕 來(lái)源: 51CTO技術(shù)棧
相關(guān)推薦

2018-06-06 09:48:18

保障系統(tǒng)高可用

2010-09-17 14:36:55

SIP Server

2019-02-21 10:02:35

人工智能AI機(jī)器學(xué)習(xí)

2019-10-29 15:46:07

區(qū)塊鏈區(qū)塊鏈技術(shù)

2017-02-08 16:56:25

2018-08-09 15:04:19

DevOpsAIOps運(yùn)維

2010-08-20 16:44:42

綜合布線

2014-09-04 11:27:52

軟件智能化華為

2015-08-24 11:03:14

android建項(xiàng)目

2015-07-28 11:02:15

androidapp開(kāi)發(fā)

2009-02-19 16:52:08

Windows系統(tǒng)優(yōu)化智能化

2020-07-26 00:29:54

物聯(lián)網(wǎng)智慧城市IOT

2019-03-23 19:33:14

樹(shù)莓派Linux操作系統(tǒng)

2025-04-30 08:56:34

2010-03-16 14:32:51

Java系統(tǒng)線程組

2024-12-30 11:07:37

政務(wù)人工智能技術(shù)

2009-08-23 21:52:37

智能化系統(tǒng)酒店節(jié)能綜合布線

2025-06-17 08:10:00

智能指針C++代碼

2019-08-21 17:41:29

操作系統(tǒng)軟件設(shè)計(jì)

2012-03-28 14:58:37

手機(jī)推送移動(dòng)應(yīng)用
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)