--- Eureka 服务注册发现 ---

Euraka 是netfix开发的基于REST服务基于AP框架的注册中心,主要是用于服务的注册,管理,负载均衡,服务故障转移

Eureka主要分俩部分

Eureka Server:服务中心Server端,提供服务注册 发现 健康检查等服务

Eureka Client:服务提供者,启动之后会向Eureka Server注册自己的服务

搭建一个Eureka Server

在项目的pom文件中添加eureka server依赖

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

在启动类上添加注解 @EnableEurekaServer 表示这是个EurekaServer服务

再添加上配置文件信息

复制代码
server:
  port: 10010
spring:
  application:
    name: eureka-server 
eureka:
  instance:
    hostname: localhost
  client:
    fetch-registry: false #表⽰是否从Eureka Server获取注册信息,默认为true.因为这是⼀个单点的Eureka Server,不需要同步其他的Eureka Server节点的数据,这⾥设置为false
    register-with-eureka: false #表⽰是否将⾃⼰注册到Eureka Server,默认为true.由于当前应⽤就是Eureka Server,故⽽设置为false.
    #设置与Eureka Server的地址,  查询服务和注册服务都需要依赖这个地址
  service-url:
    defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

这样当服务启动之后 通过localhost:10010就能访问到eureka的服务中心页面

服务发现

添加依赖eureka client依赖

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

添加配置信息

复制代码
spring:
  application:
    name: product-server # 注册服务的名字
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10010/eureka # 注册中心的url

调用服务

使用DiscoveryClient来获取到对应名字的服务 instance

调用的时候通过url调用

通过RestTemplate来发起http请求

复制代码
相关推荐
薪火铺子11 小时前
微服务认证方案对比与选型
微服务·云原生·架构
运维全栈笔记12 小时前
K8S部署Redis高可用全攻略:1主2从3哨兵架构实战
redis·docker·云原生·容器·架构·kubernetes·bootstrap
AI攻城狮13 小时前
AI Agent 从上线到删库跑路始末
云原生
键盘鼓手苏苏20 小时前
Kubernetes 容器安全最佳实践
云原生·kubernetes·k8
Elastic 中国社区官方博客20 小时前
Elasticsearch Serverless 中跨项目搜索(CPS)的工作原理
大数据·elasticsearch·搜索引擎·云原生·serverless
键盘鼓手苏苏20 小时前
Kubernetes 安全最佳实践
云原生·kubernetes·k8
小妖同学学AI21 小时前
云原生AI服务新范式:Jina Serve框架,让多模态大模型落地像搭积木一样简单
人工智能·云原生·jina
独隅1 天前
it+云原生:GitOps实践指南-K8s配置版本管理
git·elasticsearch·云原生
AI攻城狮1 天前
马斯克为何一定要干掉 OpenAI?这不只是恩怨,而是一场 AI 时代的产权之战
云原生
wapicn991 天前
微服务架构下的数据核验设计,API接入最佳实践
微服务·云原生·架构