您好,登錄后才能下訂單哦!
這篇文章主要講解了“ribbon負載均衡怎么實現”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“ribbon負載均衡怎么實現”吧!
去掉 eureke-client的依賴。
只依賴ribbon:
<!-- ribbon -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-ribbon</artifactId>
</dependency>
配置文件:
service-sms:
ribbon:
NFLoadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule
eureka:
enable: false
listOfServers: localhost:8002,localhost:8003
可以配置輪詢,可以配置隨機,上面是隨機,默認是輪詢。
ZoneAvoidanceRule(區域權衡策略):復合判斷Server所在區域的性能和Server的可用性,輪詢選擇服務器。
其他規則:
BestAvailableRule(最低并發策略):會先過濾掉由于多次訪問故障而處于斷路器跳閘狀態的服務,然后選擇一個并發量最小的服務。逐個找服務,如果斷路器打開,則忽略。
RoundRobinRule(輪詢策略):以簡單輪詢選擇一個服務器。按順序循環選擇一個server。
RandomRule(隨機策略):隨機選擇一個服務器。
AvailabilityFilteringRule(可用過濾策略):會先過濾掉多次訪問故障而處于斷路器跳閘狀態的服務和過濾并發的連接數量超過閥值得服務,然后對剩余的服務列表安裝輪詢策略進行訪問。
WeightedResponseTimeRule(響應時間加權策略):據平均響應時間計算所有的服務的權重,響應時間越快服務權重越大,容易被選中的概率就越高。剛啟動時,如果統計信息不中,則使用RoundRobinRule(輪詢)策略,等統計的信息足夠了會自動的切換到WeightedResponseTimeRule。響應時間長,權重低,被選擇的概率低。反之,同樣道理。此策略綜合了各種因素(網絡,磁盤,IO等),這些因素直接影響響應時間。
RetryRule(重試策略):先按照RoundRobinRule(輪詢)的策略獲取服務,如果獲取的服務失敗則在指定的時間會進行重試,進行獲取可用的服務。如多次獲取某個服務失敗,就不會再次獲取該服務。主要是在一個時間段內,如果選擇一個服務不成功,就繼續找可用的服務,直到超時。
感謝各位的閱讀,以上就是“ribbon負載均衡怎么實現”的內容了,經過本文的學習后,相信大家對ribbon負載均衡怎么實現這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。