代码随想录Day44 --- 2023第一天

Eureka服务注册与发现:

 

 

 

服务注册中心:

1.启动后,从其他节点拉取服务注册信息。

2.运行过程中,定时运行 evict 任务,剔除没有按时 renew 的服务(包括非正常停止和网络故障的服务)。

3.运行过程中,接收到的 register、renew、cancel 请求,都会同步至其他注册中心节点

服务提供者:

1.启动后,向注册中心发起 register 请求,注册服务

2.在运行过程中,定时向注册中心发送 renew 心跳,证明“我还活着”。

3.停止服务提供者,向注册中心发起 cancel 请求,清空当前服务注册信息。

服务消费者:

1.启动后,从注册中心拉取服务注册信息

2.在运行过程中,定时更新服务注册信息。

3.服务消费者发起远程调用:a> 服务消费者(北京)会从服务注册信息中选择同机房的服务提供者(北京),发起远程调用。只有同机房的服务提供者挂了才会选择其他机房的服务提供者(青岛)。b> 服务消费者(天津)因为同机房内没有服务提供者,则会按负载均衡算法选择北京或青岛的服务提供者,发起远程调用。

 

1、作为服务注册中心:

主类:

加@EnableEurekaServer

yml:

server:
port: 7001

eureka:
instance:
hostname: localhost #eureka服务端的实例名称

client:
#false表示不向注册中心注册自己
register-with-eureka: false
#false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要去检索服务
fetch-registry: false
service-url:
#设置与Eureka Server交互的地址查询服务和注册服务都需要依赖这个地址。
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

pom:

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>

 

2、作为服务提供者:payment-8001

pom添加依赖,yml文件添加配置条件注册进eureka注册中心,主类添加@EnableEurekaClient

pom:

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>

yml:

eureka:
client:
#表示是否将自己注册进EurekaServer默认为true。
register-with-eureka: true
#是否从EurekaServer抓取已有的注册信息,默认为true。单节点无所谓,集群必须设置true才能配合ribbon 使用负载均衡
fetch-registry: true
service-url:
defaultZone: http://localhost:7001/eureka
instance:
prefer-ip-address: true # 使用ip地址注册

主类:

@EnableEurekaClient

 

3、作为服务消费者   order-81

和作为服务的提供者类似,订单微服务对于支付来说是消费者,对于其他来说可能作为提供者。配置方式和服务提供者类似。

posted @   NobodyHero  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
历史上的今天:
2017-01-01 final和包装类
点击右上角即可分享
微信分享提示