對(duì)于dubbo和zookeeper的淺見
在服務(wù)器集群環(huán)境中,阿里推出的dubbo框架一直是讓人仰望的存在,可如今想想,也沒啥。
dubbo其實(shí)就是一個(gè)調(diào)用工具,他的服務(wù)調(diào)度也就是知名的幾個(gè)負(fù)載均衡算法,服務(wù)監(jiān)控其實(shí)也就是有一個(gè)定時(shí)任務(wù)在定期檢查服務(wù)情況,剩下的,調(diào)用的底層逃不開socket鏈接tcp協(xié)議,說白了,我其實(shí)完全可以自己實(shí)現(xiàn)自己的dubbo框架,至于注冊(cè)中心zookeeper,也不再是高山仰止般的存在了。(PS:我討厭那種有很多繁雜配置和很高學(xué)習(xí)成本的新技術(shù))
zookeeper其實(shí)也可以自己實(shí)現(xiàn),我完全可以用redis存儲(chǔ)各項(xiàng)配置,配合一套合理的緩存管理系統(tǒng)實(shí)時(shí)刷新各項(xiàng)服務(wù)的最新信息,譬如:A服務(wù)的配置是一個(gè)json信息:
1 { 2 'url':'192.168.1.123', 3 'serviceName':'A_Service' 4 'last_service_time':'12ms' 5 }
然后A服務(wù)有N臺(tái)機(jī)器,那么這個(gè)服務(wù)其實(shí)是一個(gè)json數(shù)組的配置,這時(shí)路由策略就可以根據(jù)這些配置和算法去進(jìn)行負(fù)載均衡,至于監(jiān)控,也有很多實(shí)現(xiàn)方式,譬如:服務(wù)每次調(diào)用完更新配置時(shí)間到redis,如果不更新,則默認(rèn)為它不在狀態(tài),郵件通知運(yùn)維同學(xué)。
各種框架在這些道理上做了N多擴(kuò)展,因?yàn)橐尭嗖煌ǖ膱?chǎng)景使用,所以它必須要有很高的兼容性,所以每一個(gè)框架都是有很多功能是用不到的。

浙公網(wǎng)安備 33010602011771號(hào)