轉於自己在公司的blog:
[url]
每次分享分布式服務框架,講到帶來的價值時,
像什麼可靠高效能,服務治理等等一些常規價值,大家還能聽我們吹吹,
但有幾條不明顯的價值經常被質疑,所以寫下來,省點口舌,
[b](1) 可以減少db連線數:[/b]
其實原因很簡單,當集群特別大時,比如應用集群上萬台時,
如果每台連線池最小連線數為一,也要持有一萬連線,
當加乙個中間層,讓很少的中間層集群訪問資料庫,就會減少很多,
因為某個兄弟公司就是因為這個原因才做分布式拆分的,所以我們才把它列為價值的一條。
[b](2)可以提高資源利用率:[/b]
因為服務通常是無狀態或少量狀態的可並行的一些業務邏輯,
可以說是計算密集型程式,基本上適用amdahl's law原則:
amdahl's law:[url]'s_law[/url]
[img]
加速度s等於:
[img]
其中,p為程式的可並行比率,n為處理器個數(也就是機器數)。
分布式切分應用後:
(1) 縮小了集群規模,小規模增加機器收益最高。
(2) 分離了序列因素,使多數集群並行因子增大。
所以可以用更少的機器來加速應用,也就提公升了資源的利用率。
分布式服務框架 Zookeeper
createmode persistent 建立後只要不刪就永久存在 ephemeral 會話結束年結點自動被刪除,ephemeral結點不允許有子節點 sequential 節點名末尾會自動追加乙個10位數的單調遞增的序號,同乙個節點的所有子節點序號是單調遞增的 persistent sequen...
大型分布式服務框架
1 首先遠端服務呼叫有三種模式 同步 非同步 future 非同步 callback 三種呼叫模型,正常的都是同步呼叫,呼叫的時候阻塞當前執行緒,非同步一般只會在特殊的情景下有用。2 全域性配置 所有服務的配置應該是需要在乙個全域性配置中心配置 zookeeper集群 的,而不是寫死在 裡面,避免出...
微服務 分布式服務框架
spring cloud rest與rpc比較 dubbo 和 spring cloud 對比 通訊協議 傳輸的格式都屬於協議 服務路由 分布式服務上線時都是集群組網部署,集群中會存在某個服務的多例項,消費者如何從服務列表中選擇合適的服務提供者進行呼叫,這就涉及到服務路由。分布式服務框架需要能夠滿足...