分布式架構(gòu) 分布式處理、分布式存儲方面新的研究方向有哪些?
分布式處理、分布式存儲方面新的研究方向有哪些?近兩年來分布式存儲的研究趨勢是效率、可擴(kuò)展性和性能。效率的提高得益于云存儲的普及。一般來說,云存儲的投資比較大,所以成本控制非常重要。無論Amazon、q
分布式處理、分布式存儲方面新的研究方向有哪些?
近兩年來分布式存儲的研究趨勢是效率、可擴(kuò)展性和性能。效率的提高得益于云存儲的普及。一般來說,云存儲的投資比較大,所以成本控制非常重要。無論Amazon、qiniu還是其他廠商都希望存儲成本盡可能低,所以虛擬化存儲和擦除非常重要,還有一些研究人員在研究代碼和復(fù)制;還有更多的人在研究可擴(kuò)展性,這可以從fast/osdi/sosp等會(huì)議上看到。主要是規(guī)模擴(kuò)張和移動(dòng)平臺擴(kuò)張。在大數(shù)據(jù)時(shí)代,人人都有數(shù)據(jù),對存儲的需求也越來越大。原來的解決方案在這樣的規(guī)模下難度更大,所以haystack有了這樣的系統(tǒng),移動(dòng)平臺更是多姿多彩,這從蘋果IOS/Android存儲文件系統(tǒng)的迭代就可以看出。性能是一個(gè)永恒的話題,對高性能的需求總是存在的。我曾經(jīng)聽說一家金融機(jī)構(gòu)希望存儲速度能和內(nèi)存一樣快。當(dāng)然,這也是可能的,所以flash存儲和相變存儲已經(jīng)成為熱門,這也是各大會(huì)議的一大主題。另一個(gè)研究方向是功耗。我覺得這個(gè)比較小,有偽命題的色彩。分布式處理的主要方向是規(guī)模和效率。它支持更大的數(shù)據(jù)量和更快的計(jì)算速度。內(nèi)存計(jì)算現(xiàn)在非常流行和有前途。
如何使用消息隊(duì)列解決分布式事務(wù)?
有兩種選擇。
Scheme 1 Local message transaction table
生產(chǎn)者需要添加一個(gè)事務(wù)消息表。具體步驟如下:[1。生產(chǎn)者執(zhí)行業(yè)務(wù)邏輯并將事務(wù)記錄插入到消息表中。這兩個(gè)操作在一個(gè)本地事務(wù)中
2。啟動(dòng)后臺線程定期輪詢消息表并將消息發(fā)送到消息隊(duì)列
3。刪除消息表中的消息,直到發(fā)送成功。
方案2需要消息隊(duì)列支持,業(yè)務(wù)端提供回溯接口
1。生產(chǎn)端將準(zhǔn)備好的消息發(fā)送到消息隊(duì)列
2。在本地事務(wù)中,業(yè)務(wù)邏輯
3。根據(jù)執(zhí)行結(jié)果確認(rèn)或取消準(zhǔn)備好的消息
4。消息隊(duì)列將確保準(zhǔn)備好的消息被確認(rèn)或取消,并且消息隊(duì)列將不斷地向生產(chǎn)端請求執(zhí)行結(jié)果,這要求生產(chǎn)端提供類似的回調(diào)函數(shù)。
在方案2中,消息隊(duì)列取代了方案1中的消息表和后臺線程輪詢功能,但并非所有消息隊(duì)列都支持此功能。支持Rocketmq。
方案1的開發(fā)工作量大,外部依賴性小
方案2的開發(fā)工作量小,但依賴于特定的消息隊(duì)列。