1、分布式服務(wù)框架
如果要讓不同的子系統(tǒng)或者服務(wù)之間互相通信,首先必須有一套分布式服務(wù)框架。也就是各個(gè)服務(wù)可以互相感知到對方在哪里,可以發(fā)送請求過去,可以通過HTTP或者RPC的方式。最常見的技術(shù)就是dubbo以及spring cloud。
2、分布式事務(wù)
一旦系統(tǒng)拆分為了多個(gè)子系統(tǒng)之后,那一個(gè)貫穿全局的分布式事務(wù)需要怎么來實(shí)現(xiàn)?此時(shí)需要TCC、最終一致性、2PC等分布式事務(wù)的實(shí)現(xiàn)方案和開源技術(shù)。
3、分布式緩存
如果原來就是個(gè)單塊系統(tǒng),可以在單個(gè)JVM里進(jìn)行本地緩存。但是如果有很多個(gè)子系統(tǒng)要共享一個(gè)緩存,此時(shí)應(yīng)該怎么辦?
4、分布式消息系統(tǒng)
在單塊系統(tǒng)內(nèi),就一個(gè)JVM進(jìn)程內(nèi)部,你可以用類似LinkedList之類的數(shù)據(jù)結(jié)構(gòu)作為一個(gè)本地內(nèi)存里的隊(duì)列。但是多個(gè)子系統(tǒng)之間要進(jìn)行消息隊(duì)列的傳遞呢?
5、分布式鎖
不同的系統(tǒng)之間如果需要在全局加鎖獲取某個(gè)資源的鎖定的問題。
6、分布式搜索系統(tǒng)
如果在單塊系統(tǒng)內(nèi),可以在本地就基于Lucene來開發(fā)一個(gè)全文檢索模塊,但是如果是分布式系統(tǒng)下的很多子系統(tǒng),還能直接基于Lucene嗎?
了解更多服務(wù)器及資訊,請關(guān)注夢飛科技官方網(wǎng)站 http://www.qzkangyuan.com/,感謝您的支持!