一、服务治理:Spring Cloud Eureka
2021-07-12 22:07
标签:img map cli 注解 org turn 地址 art image 核心内容: 服务治理:主要是用来实现各个微服务实例的自动化注册与发现 服务注册:在服务治理框架中,通常会构建一个注册中心,每个服务单元向注册中心登记自己的提供的服务,将主机与端口号、版本号、通信协议等一些信息告诉给注册中心,注册中心按服务名分类组织服务清单。 eg: 另外,服务注册中心还需要以心跳的方式去监测清单中的服务是否可用,若不可用需要从服务清单中踢出 服务发现:由于在服务治理框架下运作,服务间的调用不再通过制定具体的实例地址来实现,而是通过向服务名发起请求调动实现。 步骤:1、调用方向服务注册中心获取所有服务的实例清单 2、轮询取出清单中的一个进行服务调用(负载均衡) 搭建服务注册中心: 1、添加依赖: 3、添加配置 启动ribbon-consumer,请求两次/ribbon-consumer,可以看到在两个控制台一次打印信息 在ribbon-consumer还能看到被调用者信息 一、服务治理:Spring Cloud Eureka 标签:img map cli 注解 org turn 地址 art image 原文地址:https://www.cnblogs.com/culture/p/9543882.html
spring-cloud-dependencies
spring-cloud-starter-netflix-eureka-server
2、通过@EnableEurekaServer注解启动一个服务注册中心,提供给其他应用进行对话 server.port=1111
eureka.instance.hostname=localhost
eureka.client.register-with-eureka=false --由于该应用为注册中心,所以设置为false,代表不想注册中心注册自己
eureka.client.fetch-registry=false --由于注册中心的职责就是维护服务实例,它并不需要检索服务,所以也设置为false
eureka.client.service-url.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/
4、启动项目访问:http://localhost:1111
注册服务提供者
把一个springBoot应用加入Eureka的服务治理体系中去
1、新建一个module
2、加入
spring-cloud-starter-netflix-eureka-client
3、在启动类上加上@EnableEurekaClient注解
4、添加配置文件spring.application.name=hello-service
eureka.client.service-url.defaultZone=http://localhost:1111/eureka/
高可用注册中心
在Eureka的服务治理设计中,所有节点既是服务提供方,也是服务消费方,服务注册中心也不例外。
Eureka Server的高可用实际上就是将自己作为服务,想其他服务注册中心注册自己(相互注册)
搭建:有了多个注册中心之后,修改服务提供者和服务消费者:
eureka.client.service-url.defaultZone=http://localhost:1111/eureka/,http://localhost:1112/eureka/
现在已经有了服务注册中心和服务消费者,现在需要一个服务提供者。服务发现的任务由Eureka的客户端完成,服务消费的任务由Ribbon完成
和原来的hello-service基本一致,在依赖中加入
spring-cloud-starter-netflix-ribbon
在配置类中加入RestTemplate,并加上@LoadBalanced用户负载均衡
最后,调用hello-service里面的服务@Autowired
private RestTemplate restTemplate;
@RequestMapping("/ribbon-consumer")
public String helloConsumer(){
return restTemplate.getForEntity("http://hello-service/hello", String.class).getBody();
}
文章标题:一、服务治理:Spring Cloud Eureka
文章链接:http://soscw.com/index.php/essay/104355.html