package com.yun.beans; import org.springframework.cloud.client.loadbalancer.LoadBalanced;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.client.RestTemplate; @Configurationpublic class Beans {//管理简单对象@Bean@LoadBalancedpublic RestTemplate getRestTemplate(){return new RestTemplate();}}@Bean注解告诉工厂,这个方法需要自动注入 。
@LoadBalanced,表示需要做负载匀衡 。
然后如controller中一样注入一下restTemplate,并且使用他,区别是可以直接使用服务名访问了
String forObject = restTemplate.getForObject("http://EUREKA-SERVICE/Hello/World?s=" + s, String.class);开始测试:
1.运行server的启动类:

文章插图
2.运行servicesupport的启动类:

文章插图
3.运行serviceconsume的启动类:

文章插图
浏览器访问:

文章插图
8072为服务消费方的端口
访问方法解析:
- 访问服务消费方@RequestMapping指定的路径及消费方的端口来访问消费方的controller
- controller根据服务名去server方获取获取服务列表,获取服务列表后根据随机的模式负载匀衡后去选择服务地址去访问servicesupport:如下图

文章插图
---------- 更新于星期日2018年12月30日 20:02 待续....---------
待续...
2.5 Eureka server的高可用配置点击下图配置

文章插图

文章插图
接下来配置三台01,02,03的虚拟机参数
01:8699

文章插图
02:8698

文章插图
03:8697

文章插图
之后点ok保存,可看见多出三个启动项

文章插图
接下来分别改注册端口号,defaultZone分别启动三个启动项
打开server的yml配置,删掉前两行端口号配置(图中有错,请把instance 和hostname那两行删掉)

文章插图
配置好yml后点击启动

文章插图
同理,我们再次改动端口号为8699和8697后,把启动项改为02,之后启动(图中有错,请把instance 和hostname那两行删掉)

文章插图
同理把yml端口改为8699 和 8698后,把启动项改为03,之后启动(图中有错,请把instance 和hostname那两行删掉)

文章插图
启动后分别访问三个01,02,03端口,已经可以看见可以访问了 。

文章插图

文章插图

文章插图
打开服务提供方的yml配置如下,把端口号改为三个中其中的一个 。

文章插图
启动服务提供方之后,再次访问三个01,02,03我们会发现
重点:即使服务提供方只注册了一个端口号8699,但是另外两个端口号,也能感知到服务提供方8701的存在了 。如下图:

文章插图

文章插图
推荐阅读
- Facebook邮箱抓取5个工具
- 阿萨姆红茶的历史,阿萨姆红茶泡法
- 土耳其红茶产自哪里,红茶在土耳其的历史
- 翡翠|分辨翡翠饰品的优劣,可以从色彩这方面着手,根据物理区别鉴定
- 从源码看Log4j2、FastJson漏洞
- 一文读懂Access数据库,从此不用Access数据库
- 从啃PS到啃C4D,我的动态设计之路
- 如何从 Kafka 看 时间轮 算法设计
- 小白是如何让Kali Linux操作系统从U盘成功启动
- 最完整的Vue教程-从零开始编写可视化大屏
