亚洲AV无码欧洲AV无码网站_国产精品视频色_大地资源网更新免费播放视频_私人影院性盈盈影院_久久99精品久久久久久236_最新亚洲人成无码网站

MongoDB在跨境電商物流供應鏈系統中的實踐

來源:IT大咖說 | 2018-02-05 09:59

  內容來源:2017年4月22日,貝法易集團技術部總監黃亮在“2017年MongoDB中文社區深圳用戶組大會”進行《MongoDB在跨境電商物流供應鏈系統中的實踐》演講分享。IT 大咖說作為獨家視頻合作方,經主辦方和講者審閱授權發布。

  閱讀字數:2896 | 4分鐘閱讀

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  摘要

  本次介紹下出口易跨境電商物流供應鏈系統從單體應用過渡到面向服務的分布式系統架構的過程中,遇到的一些挑戰和實現。其中包括了基于MongoDB建模和數據持久化方面上具體實踐。

  嘉賓演講視頻回顧及PPT:http://t.cn/R82rZLw

  關于出口易物流

  出口易物流是廣州市貝法易商貿有限公司(簡稱貝法易)旗下,以全球倉儲為核心,整合全球物流網絡系統,為跨境電商賣家提供海外倉儲、國際專線、國際小包、國際快遞、FBA頭程等物流服務以及本地化售前售后服務,解決訂單管理、金融融資難題。我們不是物流的供應商,我們是跨境電商全程物流解決方案提供商。

  我們公司的重資產是人員,我們了解跨境電商物流,包括跨境電商通關的環節、關于物流方面的國際法律以及離境品的相關信息,這些都是我們公司最寶貴的資源。

  我們公司底下有一大群長期合作的供應商,這是我們最大的優勢。我們的難點也是在于這些供應商是不可控的,因為我們是在使用別人家的服務。

  所以除了訂單系統還有一個很重要的資產就是我們自營的海外倉儲,這也是我們最核心的價值。

  覆蓋歐美澳主要市場的服務網絡

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  上圖是我們全球布局的物流網絡。這些倉儲有大有小,英國倉庫是我們最核心的倉庫。截至2017年,在國內我們一共有八個倉儲中心,重點的是在深圳、廣州和上海。

  全球主流電商平臺重點推薦物流服務提供商

  我們合作的平臺推薦我們的物流服務提供商有Amazon、ebay、wish、阿里國際、shopee、AliExpress還有LAZADA。

  出口易新老架構演變過程

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  我們之前的系統是上圖左邊的架構,針對商家第三方的ERP和一些商家自己研發的一套系統,還有一些平臺跟我們的系統都是有直接交互。有的是通過出口易提供了一套UI來進行訪問,還有就是大量的線上發貨,我們會采用API來進行接入。我們后臺有admin管理后臺,還有單獨的一塊WMS系統。

  我們認為這個系統有些過于龐大,想做一些調整。新的架構大部分還是沒有改動,只是在后端針對admin的系統想要往面向服務架構方向落地。基于業務場景的切分有兩塊,一塊是基于通用服務,比如說用戶的認證和授權,還有就是日志。

  支付有一些支付網關,有和paypal、alipay、payoneer還有銀行的接口。

  下面是我們業務最主要模塊,包括產品報價、客戶關系管理系統,還有訂單、物流網絡和運輸,包括WMS、支付、物流軌跡跟蹤、供應商管理系統,還有結算報表等等諸如此類。

  出口易老業務系統特點

  單體應用:前后端系統共用一套WEB App Solution。

  單一數據庫:采用MS SQLServer 數據庫,核心業務功能共用一個數據庫。

  業務功能完整:IT系統隨業務的發展不斷擴展新功能。滿足開展跨境電商物流業務最基本的功能性需求。

  容易測試和部署:單獨一個Solution,系統依賴少,一旦部署,全部功能即可測試。

  出口易老業務系統不足

  不夠靈活:對應用程序做任何細微的修改都需要將整個應用程序重新構建、重新部署。

  妨礙持續交付:系統規模大,構建和部署時間也相應地比較長,不利于頻繁部署,阻礙持續交付。

  受技術棧限制:包括開發語言,開發工具,數據庫一旦選定,無法根據實際需要作其他選擇。

  技術負債:系統邏輯異常復雜,隨著時間推移,人員更迭,技術負債不斷累積。

  出口易新業務系統特點

  面向服務:根據業務模塊切分不同的系統模塊,系統模塊采用面向服務架構。服務與服務通過明確的接口定義進行通訊。

  領域驅動設計:每個業務模塊團隊負責一個領域或業務功能相關的全部開發。核心領域根據DDD中明確定義的規則實現。

  獨立部署、升級、擴展和替換:每個服務可以單獨部署,透明升級,不影響整個系統。

  異構/采用多種語言:每個服務開發團隊,可以選擇自己熟悉開發語言,數據庫,開發工具和開發架構。

  新架構落地的切入點

  身份認證:每個服務都需要統一的登錄認證。

  鑒權:不同的用戶使用相同的服務模塊都需要鑒權。

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  由單點登錄的頁面包括基于OAuth2 API這樣的方式來接入。內部采用的是DDD這樣的一個邏輯架構,包括應用層、領域層。領域層里面又包括了領域模型、實體子對象、領域服務、領域事件和查詢的規格。

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  基于倉儲,要存一個訂單,必須連接實體和子對象一起存儲刷新到數據庫。

  我們做應用的時候更偏向于完成業務,所以選用了mangoDB。我們有一套自己的架構,在封裝的過程中就會把mangoDB做一層封裝。

  上圖中面向切面的架構包括了exertion、loading和cache等切面。

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  上圖是TMS系統調撥單聚合根示意圖,它包括了物流軌跡的集合、預計到貨時間等信息,還有這些調撥單歷經的節點信息。

  為什么選擇MongoDB?

  1、非事務緊密型。錯誤數據容忍性相對比較高。

  2、團隊成員有使用MongoDB開發經驗。對基于MongoDB方面的建模需要考慮的必要冗余有一定的了解。

  3、Portal 模塊數據庫讀大于寫,基于MongoDB讀寫方面的高性能,解決了高并發下系統卡頓問題。

  4、TMS 系統模型之間關系復雜,采用傳統關系數據庫,勢必增加一堆表。采用MongoDB,可以把復雜的模型,通過一個Doucment存儲到一起。

  基于MongoDB開發需要注意的問題

  集合之間不能Join,建模方面要特別注意。建議增加必要的冗余,減少二次查詢。

  僅僅支持單個Document級別事務。數據一致性錯誤時,要考慮增加必要數據監控和數據修復功能。

  聚合查詢,需要通過MongoDB 聚合管道方式查詢,MongoDB C# 驅動提供了良好支持,但是相對Linq查詢還是比較繁瑣。

  基于MongoDB的持久化實現

  一、倉儲Repository

  倉儲限定在對整個聚合根的操作上,提供聚合根的持久化和重建或查詢。

  二、倉儲上下文Repository Context

  負責事務處理。每個聚合根的倉儲都會關聯到同一個倉庫上下文。但是MongoDB 不支持事務,我們提供了虛擬實現。倉儲上下文應用了工作單元模式。

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  一些關注點

  一、領域模型采用POCO(POJO)

  簡單的CLR對象(簡單的Java對象),不繼承任何持久化框架中的基類,或實現任何持久化框架中的接口。領域層不引用MongoDB類庫。MongoDB倉庫層使用lambda expression 實現類的Map。

  二、ID 生成器

  有多種ID生成器可供選擇。GuidGenerator,OjbectIdGenerator,String OjbectIdGenerator,etc。我們ID一律使用String類型。所以直接使用MongoDB的StringObjectIdGenerator。

  三、多態類的Map

  如果把多態類(繼承)映射到MongoDB,需要指定已知類型。

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  四、一些需要了解的約定

  NamedIdMemberConvention可以指定類的哪些屬性可以作為ID。

  IgnoreExtraElementsConvention可以忽略Document中不存在于類中的字段,否則會拋出異常。

  EnumRepresentationConvention可以指定枚舉序列化的方式,我們都指定為BsonType.String。

  MongoDB聚合框架(C#)

  一、聚合框架

  MongoDB2.2版本引入了此功能,是數據聚合的一個新框架。

  這個框架一是對文檔進行“過濾”,也就是篩選出符合條件的文檔;二是對文檔進行“變換”,也就是改變文檔的輸出形式。其他的也包括按照某個指定字段分組和排序等。

  它其實是MapReduce的替代方案,但比MapReduce簡單。

  該框架使用聲明性管道符號來支持類似SQL 中的Group by 操作的功能。不需要自己編寫自定義的JavaScript。

  二、管道操作符

  $project:數據投影,主要用于重命名、增加和刪除字段。

  $match:過濾操作,篩選符合條件文檔,作為下一階段的輸入。

  $limit:限制經過管道的文檔數量。

  $skip:從待操作集合開始的位置跳過文檔的數目。

  $unwind:將數組元素拆分為獨立字段。

  $group:對數據進行分組。

  $sort:對文檔按照指定字段排序。

  $geoNear:會返回一些坐標值,這些值以按照距離指定點距離由近到遠進行排序。這個在地理信息系統中比較常用。

  

MongoDB在跨境電商物流供應鏈系統中的實踐


  

MongoDB在跨境電商物流供應鏈系統中的實踐


  總結

  對于大多數的聚合操作,聚合管道可以提供很好的性能和一致的接口。

  使用起來比較簡單,和MapReduce一樣,它也可以作用于分片集合。

  輸出的結果只能保留在一個文檔中,要遵守BSON Document大小限制(當前是16M)。

  管道對數據的類型和結果的大小會有一些限制,對于一些簡單的固定的。

  聚集操作可以使用管道,但是對于一些復雜的、大量數據集的聚合任務還是使用MapReduce。

  今天的分享就到這里,謝謝大家!


【聲明】物流產品網轉載本文目的在于傳遞信息,并不代表贊同其觀點或對真實性負責,物流產品網倡導尊重與保護知識產權。如發現文章存在版權問題,煩請聯系小編電話:010-82387008,我們將及時進行處理。

熱門排行

10秒快速發布需求

讓物流專家來找您

主站蜘蛛池模板: 亚洲人成小说网站色_免费在线看黄色_久久久久久亚洲精品_一个人看的www免费观看视频_亚洲欧洲日本国产_不卡久久_性生交大片免费全毛片_兔子先生高清在线观看 | 国产色片_欧美成人黄色片_午夜影院在线观看_国产精品视频1区_宅男影院在线播放999_久在线视频播放免费视频_国产69精品久久久久9999APGF_别c我啊嗯国产av一毛片 | 亚洲在线高清_亚洲精品成人在线_黄色一级免费观看_天天澡天天揉揉av在线_欧美国产一区二区在线_国内精品久久久久影院网站_国产成人精品无缓存在线播放_91啦91丨porny丨论坛 | 成年免费a级毛片免费看丶_99久久爱re热6在播放_99网站_99精品99久久久久久宅男_国产超碰在线_亚洲春色在线视频_国内露脸8mav_日日插夜夜操 | 国产10000部拍拍拍免费视频_免费观看av的网址_亚洲国产精品无码久久一线_男男高肉H视频无码网址_国产亚洲第一页_免费看操_午夜dj在线观看免费视频www_欧美男人天堂网 | 精品一区二区三区影院在线午夜_国产成人AV综合亚洲色欲_交换娇妻呻吟hd中文字幕_东北老富婆高潮大叫对白_日日摸夜夜添夜夜躁好吊_97婷婷狠狠成为人免费视频_成人网站网址在线观看播放_波多野结衣av一本一道 国产毛片一线_亚洲性生活片_天天干干夜夜_超碰男人_妞干网国产_3D动漫同人精品无码专区_2021av视频_国产精品久久久久久久久久久痴汉 | 免费观看呢日本天堂视频_999久久国精品免费观看网站_少妇高潮a片无套内谢麻豆传_欧美在线一二_亚洲视频一级片_亚洲中文字幕无码超碰_各种高潮videos抽搐合集免费_麻豆出品必是精品 | 老鸭窝视频在线观看_chinese国产人妖ts_狠狠躁夜夜躁人人躁婷婷91_2021av在线_亚洲成AV人片在线观看无线_国产看片网站_69精品人人人人人人人人人_亚洲欧美色中文字幕在线 | 国产色精品VR一区二区_国产三级精品vs_免费看亚洲片_人人曰人人做人人_一级免费大片_黑人巨大亚洲一区二区久_亚洲色丰满少妇高潮18P_九九热视频在线 | 国产精品一区二区香蕉_91精品一二区_天堂网在线.www天堂在线资源_成人亚洲一区二区三区_人妻尝试又大又粗久久_亚洲国产精品无码成人A片在线_私人家庭影院5777_亚洲国产影视 | 黄色片免费_搜查官中文字幕一区二区_亚洲AV影院一区二区三区_av中文天堂网_日日射视频_国产在线看视频_在线免费观看成人网_91久久精品一区二区三区大 | 亚洲福利视频网址_一级做a爰片久久毛片免费看_成人aaaa免费全部观看_18禁无码永久免费无限制网站_久久AV无码专区亚洲AV桃花岛_国产50部艳色禁片无码_日本不卡一_777亚洲精品乱码久久久久久 | 国产裸体视频_好猛好深好爽喷水无码视频_久久久久成人片免费观看_午夜在线观看免费线无码视频_亚洲高清视频一区二区三区_欧美视频区_亚洲精品视频二区_中文字幕综合视频 | 久久久久影视_欧美亚洲日本一区_国产精品久久久久久久免费_六月婷色_精品日韩在线视频_麻豆文化传媒www网站入口_精品国产美女a久久9999_亚欧美一区二区 | 国产日韩一区二区_人妻无码久久一区二区三区免费_日本道精品一区二区三区_老司机avhd101_女女综合网_久草在线久草在线2_爱草免费视频_日韩一及片 | 99ri精品国产亚洲_精品国产乱码久久久久久蜜臀_制服在线无码专区_中文字幕无线乱码人妻_国产精品毛片一区二区在线_丁香婷婷六月综合网_亚洲永久av_久久久亚洲欧美 | 久青草视频_欧美日韩国产精品自在自线_国产自偷亚洲精品页65页_无码免费大香伊蕉在人线国产_97caopor国产在线视频_久久精品欧美一区二区三区麻豆_亚洲第一页国产_女人色网站 | 国产成人高清成人AV片在线看_91社看片_日本a∨视频_熟女人妻在线视频_日本不卡二区视频_四虎精品寂寞少妇在线观看_国产视频亚洲精品_欧美日韩 | 国产裸体视频_好猛好深好爽喷水无码视频_久久久久成人片免费观看_午夜在线观看免费线无码视频_亚洲高清视频一区二区三区_欧美视频区_亚洲精品视频二区_中文字幕综合视频 | 亚洲av久播在线播放_亚洲国产精品精_久久国产日韩精华液的功效_亚韩无码一区二区在线视频_嫩模被啪的呻吟不断_久久久国产一区二区三区四区小说_亚洲一区二区三区乱码在线欧洲_4hu最新网 | 亚洲一区视频在线_日韩av无码中文一区二区三区_欧洲一级中文字幕在线_伊人大杳焦在线_国产精品久久久久久久久久久久久久_freesexvideos高潮hd护士_久久久久成亚洲综合精品_成人片又黄又爽免费视频 | 久久xxx视频_国产寡妇乱子伦一区二区三区。_精品999www_二级黄色大片_久久毛片视频_靠逼国产_精品免费国产二区三区_伊人色播 | 亚洲午夜视频_久久78_麻豆国产原创视频在线播放_成人在线视频免费播放_远方的山楂树免费观看视频48集_亚洲另类春色国产精品_国产影院一区二区三区_无套内射AV五十区 | 中文字幕久久熟女人妻av免费_h漫在线观看_www.天天干.com_99热最新网址_国产AV无码专区亚洲AV麻豆_99成人精品视频_成熟女人色惰片免费视频_久久亚洲综合色一区二区三区 | 亚洲情综合五月天_久色精品视频_凹凸69堂国产成人精品_日日日插插插_91麻豆精品国产自产在线游戏_亚洲va中文字幕无码久久不卡_亚洲激情一级片_永久黄网站色视频免费观看 | 午夜在线视频一区二区三区_国产精品91久久久久久_黄色录像a级_在线播放免费av_久久精品婷婷_美女天天干_四虎黄色录像_oxox国产午夜精品 | 国产一区二区三区精品视频_偷拍一区二区三区在线婷婷_欧美孕妇色xxxxx_厨房里边做饭边啪啪爱爱_亚洲精品成人久久_亚洲日韩AV无码不卡一区二区三区_久在线观看福利视频_国产在线高潮流白浆免费观看 | 精品嫩草_无码爆乳超乳中文字幕在线_超碰在线99_av中出_亚洲高清视频在线观看_顶级少妇做爰高潮_黄色一级片免费网站_AV天堂久久天堂色综合 | 日本不卡的三区四区五区_亚州ava_亚洲乱亚洲乱妇无码_日日操日日摸_日本XXXX色视频在线观看免费,_蜜桃日韩_黄免费观看_www.亚洲一区二区 | 青草一区二区_五月香蕉网_久久综合色一综合色88欧美_中文字幕在线中文一页_www.操操操.com_国产一久久香蕉国产线看观看_超碰在线一区_精品视频一区二区三区四区五区 | 久久久久久免费精品_国产三区精品_久久久人_久久午夜伦鲁片免费无码_久久综合高清_国产真人性做爰久久网站_亚洲欧美国产精品一区二区_国产00高中生在线视频 | 免费观看呢日本天堂视频_999久久国精品免费观看网站_少妇高潮a片无套内谢麻豆传_欧美在线一二_亚洲视频一级片_亚洲中文字幕无码超碰_各种高潮videos抽搐合集免费_麻豆出品必是精品 | 亚洲欲色欲色xxxxx在线观看_亚洲国产视频精品_国产精品亚洲视频_久久精品男女_国产国产成年年人免_亚洲精品无码久久久久久_影视免费观看_一边吃奶一边摸做爽视频 | 人人妻人人妻人人妻碰碰_国产精品免费一级在线观看_亚洲色无码中文字幕YY51999_亚洲综合二_狠狠躁夜夜躁人人爽天天不卡_亚洲综合日韩中文字幕_国产精品福利啪在线观看_伊人久综合 | 日韩中文字幕在线免费_嫩草伊人_男人的天堂色欲网_三a级片_久久久成人网_免费a在线观看播放_在线中文字幕乱码英文字幕正常_一区免费 | 国产区av_国产91成人精品亚洲精品_国产aⅴ一区二区_青青草手机视频_久久久SS麻豆欧美国产日韩_久久亚洲欧洲国产精品一区二区_91大神在线资源观看无广告_亚洲国产精品婷婷久久久久 | 国产人妻人伦精品熟女麻豆_国产91精品老熟女泻火_无码毛片一级片特黄_校园春色在线观看_久草网站_国产av一区二区三区最新精品_一级毛片日韩_村上丽奈av作品 | 久久精品在线免费观看_九九热影院_超乳爆乳上司在线观看_懂色aⅴ精品一区二区三区_日本高清免费xxx_亚洲综合在线免费_国产99久_久久中文字幕人妻熟女 | 中日韩精品无码一区二区三区_国产精品福利视频一区_国产成人一区二区视频免费_国产精品麻豆视频国产馆_日本国产一区二区三区在线观看_free国产粉嫩熟妇xxxhd_国产精品无码久久综合_激情影院内射美女 | 男人的天堂色_欧美日韩色_一性一交一伦一色一按—摩_久久婷婷五月综合色和啪_日本欧洲国产一区二区_www.色99_av网站播放_91影库_91影库免费视频-91影库影院 | 精品国产一区二区三区四区五区_午夜激情三级_在线免费看污_亚洲黄色av片_色777狠狠狠综合_成人一区二区三区视频在线观看_欧美精品性生活_久久精品12 |