今天這篇文章探討的是 Uber 內部的架構以及系統設計。
Uber 最初是使用 Python 作為開發語言,並且基於 monolithic 的架構來開發前後端。 2014 之後,Uber 將架構給轉移到 service-oriented 的架構。
Uber 的業務(Taxi,Eats)基本上是一種 Demand <---> Supply 邏輯的業務,以叫車服務就是如何將叫車的使用者與開車的司機給媒合。基於業務可以分類出系統需要兩個服務,分別是
Deman 服務以及 Supply 服務。
這兩個服務會串接系統內的 DISCO(Dispatch Optimization), 該服務基於 Map&Location 等資料來進行處理,但是這兩種資料搭配經緯度要處理實在麻煩,因此該服務使用 Google S2 函式庫來處理。
文章中介紹非常多 DISCO 如何處理地點相關的資料,如何有效率地幫司機跟使用者給媒合,有興趣的可以
點選原文閱讀。
除了媒合系統外,文章中還介紹了如何處理 Payment fraud 這類型的問題,全文非常長,有興趣的可以細讀
而這邊列出文章提到的各種專案
1. PostgreSQL -> MySQL (文章中有另外一篇連結探討為什麼轉移)
2. RDBMS/HDFS
3. KAFKA
https://medium.com/nerd-for-tech/uber-architecture-and-system-design-e8ac26690dfc
service-oriented architecture 在 數位時代 Facebook 的最讚貼文
甲骨文收購AmberPoint,強化服務架構業務
甲骨文最近動作頻仍,在順利完成對昇陽電腦的收購後,最近又把眼光投向一家SOA(Service-Oriented Architecture)的應用管理軟體提供商AmberPoint。甲骨文今天宣佈收購AmberPoint,希望藉由該公司的專長協助系統應用和業務等解決方案。
service-oriented architecture 在 Service-Oriented Architecture - YouTube 的必吃
Take the full course: https://www.systemsinnovation.network/courses/7357542/ Twitter: http://bit.ly/2JuNmXX LinkedIn: http://bit.ly/2YCP2U6 ... ... <看更多>