天天看點

純手寫Ribbon負載均衡器效果

轉載請标明出處:

https://blog.csdn.net/weixin_41965979/article/details/86301189

本文出自付付訝的部落格

Ribbon的概念我就不說了,直接先說Ribbon的算法。

Ribbon負載均衡算法:

         接口總請求數 % 伺服器數量得到實際下标伺服器位置

         下面用一張圖舉例子動态說明負載均衡算法

純手寫Ribbon負載均衡器效果

 下面寫一個Ribbon負載均衡效果

   首先搭建好一個注冊中心(如果是用Eureka可以關閉自我保護機制)

   其次搭建好服務提供者(我這裡是member會員服務叢集)

注冊中心和會員服務搭建我已經在https://blog.csdn.net/weixin_41965979/article/details/86063446這篇文章裡講過了這裡就不說了

直接上ribbon代碼(我這裡用的請求累加計數是線程不安全的,建議大家使用原子計數器,因為線程安全 效率高 使用cas 無鎖機制)

純手寫Ribbon負載均衡器效果

然後啟動你的注冊中心,啟動你的提供者member叢集服務,再啟動order消費者服務調用(ribbon代碼寫消費者裡面),切記關掉@LoadBalanced注解

純手寫Ribbon負載均衡器效果

最後發送剛剛寫完的Ribbon請求 ,請求會輪詢會員服務叢集傳回給你。

純手寫Ribbon負載均衡器效果
純手寫Ribbon負載均衡器效果

繼續閱讀