Facebook的分散式優先順序佇列FOQS
Facebook 有序佇列服務 (FOQS)是一種完全託管的分散式優先順序佇列服務,用於在許多服務之間進行可靠的訊息傳遞。
FOQS 已從區域部署發展為地理分佈的全球部署,以幫助確儲存儲在邏輯佇列中的資料具有高可用性,即使在大規模災難情況下也是如此。
遷移到全域性架構需要對架構進行修改以支援路由和注意完成,而不會中斷 FOQS 客戶的服務可用性。
鑑於 FOQS 發揮的重要作用,它必須能夠抵禦大規模災難,例如整個資料中心或區域的完全故障,或者在對資料中心執行維護時計劃中斷。
FOQS 已經發展成為一個全球安裝。在 2018 年颶風佛羅倫薩之後,我們意識到要真正做好災難準備,我們需要遷移到具有更高可用性的全球架構,以便在災難事件期間仍然可以全域性訪問佇列中的資料。在此過程中,我們解決了與將租戶遷移到全球設施相關的運營挑戰,並在 2021 年以驚人的規模完成了遷移,使內部客戶的停機時間為零。
FOQS 最初是在 2018 年出於 Meta 的非同步計算平臺(又名 Async)的擴充套件需要而開發的。在我們的第一次迭代中,系統建立在三區域、半同步複製 MySQL 拓撲之上,區域 X 中的佇列節點與區域 Y 中的佇列節點完全隔離。
相關文章
- 封裝優先順序佇列封裝佇列
- 佇列 優先順序佇列 python 程式碼實現佇列Python
- 棧,佇列,優先順序佇列簡單介面使用佇列
- Java優先順序佇列DelayedWorkQueue原理分析Java佇列
- Python 列表推導及優先順序佇列的實現Python佇列
- 個推基於 Apache Pulsar 的優先順序佇列方案Apache佇列
- RMQ——支援合併和優先順序的訊息佇列MQ佇列
- Python3 執行緒優先順序佇列( Queue)Python執行緒佇列
- 原始碼解析C#中PriorityQueue(優先順序佇列)的實現原始碼C#佇列
- 分散式訊息佇列:如何保證訊息的順序性分散式佇列
- 基於EasyNetQ封裝RabbitMQ,優先順序郵件服務佇列封裝MQ佇列
- 何為CSS 樣式優先順序CSS
- CSS優先順序CSS
- 佇列-順序儲存佇列
- 運算子的優先順序
- python運算子及優先順序順序Python
- 佇列的順序儲存--迴圈佇列的建立佇列
- Android程式優先順序Android
- 中斷優先順序
- Yacc使用優先順序
- Android程式設計師會遇到的演算法(part 6 優先順序佇列PriorityQueue)Android程式設計師演算法佇列
- [譯]HTTP/2的優先順序HTTP
- toString()和valueOf()函式呼叫和優先順序函式
- PHP優先佇列PHP佇列
- 面向大規模佇列,百萬併發的多優先順序消費系統設計佇列
- 佇列順序性引發的思考佇列
- SpringBoot配置檔案優先順序載入順序Spring Boot
- SQL 優先順序join>whereSQL
- java運算子優先順序Java
- 設計中的優先順序(下)
- SAP UI configuration determination的優先順序UI
- 設計中的優先順序(上)
- CSS 選擇器的優先順序CSS
- 測試用例的優先順序
- 順序迴圈佇列的介面設計佇列
- 【資料結構】佇列(順序佇列、鏈佇列)的JAVA程式碼實現資料結構佇列Java
- [java基礎] 之 表示式和運算子的優先順序Java
- STL 優先佇列 用法佇列