spring cloud(七) 均衡負載

現在我們有了服務提供者+網關,這裏我們簡單實現下均衡負載。就是在不同的端口啓動同一個項目。我們現在8000端口啓動一個:

server:
  port: 8000
spring:
  application:
    name: test-producer
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        serviceName: ${spring.application.name}	# 註冊到consul的服務名稱

在服務中心看到啓動成功:

我們訪問下 test1路徑:

 看到顯示的我們的hello,world。

我們再修改個端口:

server:
  port: 8001
spring:
  application:
    name: test-producer
  cloud:
    consul:
      host: localhost
      port: 8500
      discovery:
        serviceName: ${spring.application.name}	# 註冊到consul的服務名稱

把 hello,world改成hello,world2,然後再啓動:

那是怎麼實現均衡負載呢?在網關(https://blog.csdn.net/qq_21454973/article/details/89022146)裏配置:

zuul:
  routes:
    test:
      path: /test/**
      serviceId: test-producer

啓動網關,訪問http://localhost:8010/test/test1

刷新下頁面:

變成2了

反覆訪問 http://localhost:8010/test/test1,結果交替返回服務8000和8001,因爲默認的負載均衡器是採用輪詢的方式。

可以看下服務中心:

點進去: 

 

這裏是在網關裏通過映射URL的方式調用的,之前有篇文章是Feign方式調用的,也可以嘗試下。

實際上就是在服務中心裏找名字是test-producer的節點然後輪詢。也可以有其他的調用方式,配置百度一下即可。

這樣當一個節點掛掉以後還可以調用第二個節點。

告辭!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章