優步的緊急按鈕及其背後的技術
uber的緊急按鈕的第一個版本於 2015 年在印度推出。原始系統允許乘客和司機在留在應用程式內的同時聯絡當地警察當局,並自動提醒區域支援團隊主動聯絡使用者。2018 年,該團隊利用增強功能改進系統,例如在應用程式中顯示實時位置資訊、與當局共享旅行詳細資訊以及製作緊急按鈕可在全球市場的 Rider 和 Driver 應用程式上使用。從那時起,該團隊透過引入使用者可以謹慎地向當地警察傳送簡訊而不是僅呼叫選項的功能,在特定市場進行了額外的改進。此外,在特定市場,我們推出了互動式語音響應解決方案,為我們的使用者提供後續服務。
點選緊急援助功能後,您將看到您的 GPS 位置、汽車品牌和型號以及車牌。如果您刷卡撥打 911並連線到緊急排程員,這些行程詳細資訊將在美國和墨西哥的許多城市以數字方式提供給他們,並可用於促進緊急響應。優步的支援團隊將跟進辦理登機手續,以確保您的安全。
在緊急情況下,幾秒鐘都很重要。重要的是要確保人們在正確的時間擁有正確的資訊(實時位置和行程資訊),這樣他們就能迅速與當局分享。如果出行資訊和實時位置能自動與當局如911中心共享,那將更有幫助。
RapidSOS 整合和持續位置共享
團隊與第三方RapidSOS合作,後者將數百萬連線裝置的潛在救生資料直接提供給 911 和緊急情況下的第一響應者。
緊急按鈕與RapidSOS 的緊急 API整合,並向 911 急救人員提供行程資訊(汽車品牌、型號、車牌和請求者姓名)和實時位置更新。
當有人點選應用程式中的緊急按鈕時,移動客戶端透過閘道器代理向緊急事件後臺服務發出請求。然後,緊急服務將行程資料傳遞給RapidSOS的API。同時,移動客戶端上的位置工作者每隔幾秒鐘就會收集並上傳位置資料到位置服務。這些實時位置更新透過Kafka流向緊急服務。Emergency Service不斷向RapidSOS的Location API發出HTTP請求,以提供實時位置資料。我們非常重視使用者的隱私,所以系統嚴格尊重使用者的許可,與RapidSOS和當局等第三方分享行程和位置資訊。
這個來自華盛頓特區的NBC片段強調了這種整合如何幫助解決現實世界中的緊急事件。目前,RapidSOS的整合在大約1200個市場中可用,覆蓋了美國74%以上的行程,以及墨西哥的幾個城市。該團隊正在繼續努力將這一功能擴充套件到美國和全球越來越多的地區。
使用 Apache Kafka 進行可靠的再處理和 DLQ
警報通道採用技術堆疊實現,強調冗餘和彈性。Uber的Kafka團隊在Apache Kafka之上開發了內部的Kafka APIs,Uber的內部服務可以與之整合,以產生和消費Kafka事件。Kafka APIs提供了一個至少一次的交付保證:一個Kafka事件至少會被交付給它的消費者一次--換句話說,沒有資料損失。另外,消費者可以為Kafka主題啟用DLQ(死信佇列)功能。
內部的Kafka APIs很適合增強應急服務的可靠性,以實現可靠的處理。對於每個警報通道,應急服務透過Kafka APIs向特定的Kafka主題生產和消費。對下游依賴的RPC在消費者處理程式中處理,緊急服務將向Kafka API返回ACK(成功)或NACK(失敗)。對於緊急服務的伺服器錯誤或網際網路故障返回的任何型別的可重試錯誤,對Kafka伺服器來說都會轉化為NACK。Kafka伺服器將繼續重新處理該事件,進行配置的重試次數。如果在所有重試之後,Kafka事件仍然不能被成功處理,事件將被推送到DLQ中。儲存在DLQ中的訊息如果是壞訊息可以被清除,或者在系統恢復後被合併(由消費者重新處理)。
一次性傳遞和DLQ機制有助於應急服務的容錯性,沒有資料損失,並且能夠在恢復期間快速重新處理。
冗餘是關鍵
任何系統都有可能出現一些意想不到的錯誤,緊急服務為每一個RPC或訊息傳遞(Kafka)建立了多層冗餘和備份,以便在處理緊急請求時盡最大努力。
每個RPC都是透過重試來實現的,重試的結果是指數級的。在Kafka APIs不可用的情況下,緊急服務會回落到對下游的RPC呼叫,並有一定數量的重試作為優雅的降級。
詳細點選標題
相關文章
- CVE-2016-1779技術分析及其背後的故事
- 微博春晚背後的技術故事
- Google DNS劫持背後的技術分析GoDNS
- 深挖谷歌 DeepMind 和它背後的技術谷歌
- JDV背後的技術-助力618
- 無人駕駛汽車背後的技術
- 瞭解Instagram背後的技術
- TGDC | 探索人臉藝術背後的技術
- 視訊直播秒開背後的技術與優化經驗優化
- ChatGPT 背後核心技術的白話版ChatGPT
- Node.js背後的V8引擎優化技術Node.js優化
- 人臉識別背後:可怕的不是技術
- GIFTO背後區塊鏈技術的分類區塊鏈
- 滴滴AR實景導航背後的技術
- 揭祕.NET Core剪裁器背後的技術
- 詳解Windows 11背後的技術創新Windows
- 背後支援著 Instagram 的開源技術
- 緊急求助!!!!RMI的實現
- Windows10系統中緊急重啟功能的使用步驟Windows
- 《青春有你2》全民pick背後的投票技術
- 聊聊人像摳圖背後的演算法技術演算法
- 《深空之眼》口型動畫背後的技術支援動畫
- 深入解讀Service Mesh 背後的技術細節
- 解析波士頓Handle機器人背後的技術機器人
- Facebook移動端照片預覽背後的技術
- 螞蟻金服微貸前端技術團隊 緊急招聘公告前端
- 直播預告 | “大淘寶技術論壇”太好逛了,背後的技術分享
- merge語句導致的效能問題緊急優化優化
- Iterator(迭代器)的用法及其背後機制的探究
- 黑洞圖片的背後,是影象處理技術的成熟!
- 《光環》《斗羅大陸:魂師對決》背後的3D優化技術3D優化
- Pew:川普就職後“憤怒”按鈕成Facebook使用者使用最多的按鈕
- MFC設定按下Enter鍵後響應指定的按鈕
- 談談CSS Sprites技術及其優化CSS優化
- 前端技術選型及背後思考前端
- 「我在淘天做技術」雙11背後的營銷技術體系
- 俄羅斯世界盃直播背後的技術趨勢
- 探索新零售時代背後的技術變革