分布式架構Zookeeper Dubbo介紹

2021-10-14 15:35:38 字數 1056 閱讀 3193

隨著網際網路技術的發展,**的規模在不斷地擴大,單一應用架構已經不再能滿足需求,由於架構的原因,系統中某一處如果要進行修改,整個應用就需要重新部署,代價非常大。而在分布式架構中就能很好地解決上述問題,每乙個模組就拆分為乙個單獨的服務,當模組的訪問量變大時,就可以將同乙個服務部署到不同的機器中同時執行。

當不同的模組之間出現呼叫關係時就會用到rpc(remote procedure call),當前最主流的兩個框架乙個是dubbo,乙個是springcloud。這裡我們主要介紹dubbo,dubbo是alibaba開源的分布式服務框架,它最大的特點是按照分層的方式來架構,使用這種方式可以使各層之間解耦(或者最大限度地鬆耦合)。從服務模型的角度看,dubbo採用的是一種非常簡單的模型,要麼是提供方提供服務,要麼是消費方消費服務,所以基於這一點可以抽象出服務提供方(provider)和服務消費方(consumer)兩個角色。

當需要被呼叫的模組在不同的多型機器上進行部署時,就會出現呼叫方不知道該呼叫哪台機器上的服務,這時候就需要註冊中心來幫助我們。註冊中心會儲存每個模組所在伺服器的位置,當呼叫方需要呼叫時,首先去註冊中心檢視被呼叫模組的位置,然後根據註冊中心返回的位置資訊,去對應的伺服器上進行呼叫。zookeeper就是乙個應用非常廣泛的註冊中心應用,它是乙個分布式的應用程式協調服務,它為分布式應用提供一致性服務,提供的功能包括:配置維護、網域名稱服務、分布式同步、組服務等。

dubbo的服務容器(container)在啟動時會載入和執行服務提供者(provider),服務提供者在啟動後會將能提供的自身的服務資訊註冊到註冊中心(registry),服務消費方(consumer)在啟動後會訂閱註冊中心中所需要的相關的服務的資訊,註冊中心會將消費方所需的服務的位址列表提供給消費方,如果服務資訊產生變更,註冊中心會基於長連線的方式推送給消費方。消費方當需要呼叫時,根據註冊中心提供的位址列表基於配置好的負載均衡機制找到服務提供方的位置進行呼叫,如果呼叫失敗,會再去找下乙個服務提供者進行呼叫,直到呼叫成功為止。

dubbo還提供了監控機制,消費方和服務提供方會定時向監控中心傳送呼叫資訊。

python分布式架構 分布式架構

1.分布式架構 採用centos mongodb windows2012 python redis進行分布式架構搭建,mongodb的框架最核心的設計就是 mongodb和mapreduce。mongodb為海量的資料提供了儲存,則mapreduce為海量的資料提供了計算,windows2012作為...

分布式架構

cap原理 c 一致性 多節點資料的一致 a 可用性 保證服務持續可用 多節點 多型伺服器 p 分割槽容忍性 是否可將資料存到多個地方 設計不可能同時滿足cap ac 放棄分割槽容忍,物理資料庫 ap 可以短暫的容忍資料不一致 nosql資料庫 cp 放棄可用性 springcloud有一下功能 e...

ElasticSearch分布式架構

it技術精華網 今天介紹下elasticsearch的分布式架構,如果你熟悉cassandra hadoop mongodb,你會發現elasticsearch裡面有很多他們的影子,沒錯,elasticsearch吸收了目前主流的分布式系統的很多特性,下面簡單介紹一把。之前翻譯過一篇 譯 搜尋引擎與...