<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
這裡是Eureka作為服務註冊中心,為OpenFeign提供伺服器端資訊的獲取,比如說服務的IP地址和埠,使用前面搭建好的專案(eureka-server)。
在idea中新建兩個專案執行主類,選擇前面建立好的專案(eureka-provider)。
設定不同執行主類,使用不同埠號,然後啟動三個不同埠號的provider。
呼叫不同的伺服器端,會返回對應伺服器端的介面。
@RestController @RequestMapping("/api") public class PoroviderController { @Value("${server.port}") private String serverPort; @PostMapping("/sayHello") public String sayHello(String name) { return "我是伺服器端" + serverPort + ",你好" + name; } }
新建一個spring-boot工程,取名為consumer-ribbon,在pom檔案引入ribbon需要的依賴。
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-ribbon</artifactId> </dependency>
設定埠、註冊中心等
server: port: 8091 servlet: context-path: /ribbon eureka: client: service-url: defaultZone: http://localhost:8761/eureka/ instance: status-page-url-path: ${server.servlet.context-path}/info health-check-url-path: ${server.servlet.context-path}/health spring: application: name: consumer-ribbon
@Configuration public class RestTemplateConfig { /** * @return org.springframework.web.client.RestTemplate * @description 注入一個可以進行負載均衡的RestTemple用於服務問呼叫 * @author fengfan * @date 2022/5/18 14:43 */ @Bean @LoadBalanced public RestTemplate restTemplate(){ return new RestTemplate(); } }
yml設定負載均衡策略
# 設定的方式設定Ribbon的負載均衡策略 EUREKA-PROVIDER: # 設定服務提供方的應用名稱 ribbon: NFloadBalancerRuleClassName: com.netflix.loadbalancer.RandomRule # 策略類(全路徑名)
程式碼方式設定負載均衡策略
@Configuration public class RibbonConfig { /** * @return com.netflix.loadbalancer.IRule * @description 設定隨機負載策略 * @author fengfan * @date 2022/5/20 16:04 */ @Bean public IRule iRule(){ return new RandomRule(); } } @SpringBootApplication @EnableEurekaClient @RibbonClient(name = "consumer-ribbon", configuration = RibbonConfig.class) public class ConsumerRibbonApplication { public static void main(String[] args) { SpringApplication.run(ConsumerRibbonApplication.class, args); } }
使用者端呼叫實現
@RestController @RequestMapping("/api") public class ConsumerRibbonController { @Resource private RestTemplate restTemplate; @PostMapping("/getServerInfo") public String getServerInfo(){ MultiValueMap<String, String> body = new LinkedMultiValueMap<>(); body.add("name", "consumer8081"); ResponseEntity<String> responseEntity = restTemplate.postForEntity("http://EUREKA-PROVIDER/provider/api/sayHello", body, String.class); return responseEntity.getBody(); } }
多次請求的伺服器端,埠隨機變化,證明設定成功。
到此這篇關於SpringCloud筆記(Hoxton)Netflix之Ribbon負載均衡範例程式碼的文章就介紹到這了,更多相關SpringCloud Ribbon負載均衡內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45