滴,滴滴……為什麼是這麼一個開頭,刷抖音的都懂,有段時間開著車在路上,一堆抖友按喇叭讓你接暗號,尷了個尬,那這個和今天聊的話題有什麼關係?告訴你,毛關係都沒有。哈哈哈哈哈打不過我吧,沒有辦法我就是這麼強大,哈哈哈哈哈追不上我吧,啦啦啦啦啦啦啦啦啦啦啦
不調皮了,每天擼代碼也挺累的,刷會抖音放送下也正常,那麼今天要聊的話題,和這個抖音有關係麼,還是真的毛關係都沒有,非要說有點關係,就是一個“抖”字,英文名:shake。有文化還是可以zhuangbility的,哈哈哈。
今天的主角叫MongoShake,我們開發小哥哥第一次和我說這個名字的時候,我以為他去那燈紅酒綠之所太多,取名字都是夜店風了,結果下一秒就是我被啪啪啪打臉了,這個shake可不是抖音的抖,也不是夜店的抖,這個shake可厲害了,我們一起來看看:
MongoShake閃亮登場
MongoShake是一個以golang語言進行編寫的通用的平台型服務,通過讀取MongoDB叢集的Oplog動作記錄,對MongoDB的資料進行複製,後續通過動作記錄實現特定需求。日誌可以提供很多情境化的應用,為此,我們在設計時就考慮了把MongoShake做成通用的平台型服務。通過動作記錄,我們提供日誌資料訂閱消費PUB/SUB功能,可通過SDK、Kafka、MetaQ等方式靈活對接以適應不同情境(如日誌訂閱、資料中心同步、Cache非同步淘汰等)。叢集資料同步是其中核心應用情境,通過抓取oplog後進行回放達到同步目的,實現災備和多活的業務情境。
MongoShake應用情境舉例
MongoShake的應用情境大致有這幾種:
1.MongoDB叢集間資料的非同步複製,免去業務雙寫開銷。
2.MongoDB叢集間資料的鏡像備份(當前1.0開源版本支援受限)
3.日誌離線分析
4.日誌訂閱
5.資料路由。根據業務需求,結合日誌訂閱和過濾機制,可以擷取關注的資料,達到資料路由的功能。
6.Cache同步。日誌分析的結果,知道哪些Cache可以被淘汰,哪些Cache可以進行預先載入,反向推動Cache的更新
7.基於日誌的叢集監控
MongoShake在LC3開源了
先科普下LC3:LinuxCon + ContainerCon + CloudOpen(LC3)中國是LFAsia, LLC主辦的旗艦年度開源盛會。去年6月首度落地中國,吸引了超過2000人次的熱情參與。今年6月25日至27日,2018 LC3中國將在北京國家會議中心召開,而我們的MongoShake,去LC3上搞事情了,沒法去現場沒關係,
>>>>閱讀全文