美文网首页
spring-cloud_Eureka

spring-cloud_Eureka

作者: 我要尝鲜 | 来源:发表于2018-07-25 15:40 被阅读0次

Eureka
完成微服务架构中的服务治理功能。
实现各个微服务实例的自动化注册与发现。

服务注册:
在服务治理框架中,通常都会构建一个注册中心,每个服务单元向注册中心登记自己提供的服务,将主机与端口号、版本号、通信协议等一些附加信息告知注册中心。

服务发现:
由于在服务治理框架中运行,服务间的调用不在通过制定具体实例地址来实现,而是通过向服务名发起请求调用实现。

注册中心具体实现:
pom.xml中配置

@EnableEurekaServer

application.properties配置
server.port=1111
eureka.instance.hostname=localhost
eureka.client.register-with-eureka=false--不允许注册中心注册自己
eureka.client.fetch-registry=false--不去检索服务
eureka.client.serviceUrl.defaultZone=http://{eureka.instance.hostname}:{server.port}/eureka/

注册服务提供者:
pom.xml中配置

@EnableDiscoveryClient

application.properties配置
spring.application.name=hello-service
eureka.client.serviceUrl.defaultZone=http://localhost:1111/eureka/

高可用注册中心
Eureka Server的高可用实际上就是讲自己作为服务向其他服务注册中心注册自己,这样就可以形成一组互相注册的服务注册中心,以实现服务清单的相互同步,达到高可用的效果。

高可用服务注册中心集群搭建:
创建application-peer1.properties,作为peer1服务中心的配置,并将serviceUrl指向peer1:
spring.application.name=eureka-server
server.port=1111

eureka.instance.hostname=peer1
eureka.client.serviceUrl.defaultZone=http://peer2:1112/eureka/

创建appilication-peer2.properties,作为peer2服务中心的配置,并将serviceUrl指向peer1:
spring.application.name=eureka-server
server.port=1112

eureka.instance.hostname=peer2
eureka.client.serviceUrl.defaultZone=http://peer1:1111/eureka/

通过spring.profiles.active属性来分别气动peer1和peer2:
java -jar eureka-server-1.0.0.jar --spring.profiles.active=peer1
java -jar eureka-server-1.0.0.jar --spring.profiles.active=peer2

服务发现与消费:
服务发现的任务由eureka的客户端完成,而服务消费的任务由Ribbon完成。Ribbon是一个基于HTTP和TCP的客户端负载均衡器,它可以通过客户端中配置的ribbonServerList服务端列表去轮询访问以达到均衡负载的作用

@EnableDiscoveryClient--服务发现
@Loadanlanced --开启客户端负载均衡

服务提供者:
服务传播
服务续约
服务消费者:
服务发现
服务调用
服务下线
注册中心:
失效剔除

相关文章

  • spring-cloud_Eureka

    Eureka完成微服务架构中的服务治理功能。实现各个微服务实例的自动化注册与发现。 服务注册:在服务治理框架中,通...

网友评论

      本文标题:spring-cloud_Eureka

      本文链接:https://www.haomeiwen.com/subject/frtpmftx.html