解决eureka服务注册名报错

解决eureka服务注册名报错

解决eureka服务注册名报错

简介

Eureka是Netflix开源的一款服务发现和负载均衡工具,用于在云环境中定位微服务实例。它允许微服务注册自己和发现其他微服务,并提供了一种简单的方式来调用其他服务的实例。

Eureka的核心概念是服务注册和服务发现。在Eureka中,每个微服务实例都可以向Eureka服务器注册自己的信息,包括服务名称、实例ID、IP地址和端口号等。Eureka服务器会维护一个服务注册表,用于存储所有已注册的微服务实例信息。

当一个微服务需要调用其他微服务时,它可以向Eureka服务器发起服务发现请求,获取目标微服务的实例列表。Eureka服务器会返回一个响应,包含所有可用的目标微服务实例信息。微服务可以通过负载均衡算法选择一个合适的目标实例进行调用。

Eureka还具有高可用性的特性。它通过使用Eureka服务器集群来实现,每个服务器都具有相同的服务注册表,可以相互进行复制和同步。当一台Eureka服务器出现故障时,其他服务器可以接管其功能,保证服务的正常运行。

除了服务注册和服务发现功能外,Eureka还提供了一些其他的特性,如健康检查、自我保护机制和客户端实例缓存等。这些特性都可以帮助开发人员更好地管理和监控微服务架构。

总结来说,Eureka是一款强大的服务发现和负载均衡工具,可以帮助开发人员在云环境中构建可靠的微服务架构。它简化了微服务之间的通信和调用,并提供了高可用性和易用性的解决方案。

正文

使用RestTemplate.getForObject( url,Class)方法中,url直接使用服务注册名进行拼接后无法正常远程调用。

如下

java 复制代码
String url="http://provider-service/provider/hello/"+id;
return restTemplate.getForObject(url,String.class);

报错404,说明没访问到

我的解决方法:换依赖版本

原来的版本

java 复制代码
<parent>
      <artifactId>spring-boot-starter-parent</artifactId>
      <groupId>org.springframework.boot</groupId>
      <version>2.6.5</version>
</parent>
<dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-dependencies</artifactId>
      <version>2021.0.1</version>
      <type>pom</type>
      <scope>import</scope>
</dependency>

更改为下面的

java 复制代码
<parent>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>2.2.3.RELEASE</version>
</parent>
<dependencies>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-dependencies</artifactId>
        <version>Hoxton.SR1</version>
        <type>pom</type>
        <scope>import</scope>
    </dependency>
</dependencies>

再次启动运行成功

如果有其他解决方案欢迎分享

相关推荐
偷萧逸苦茶1 天前
docker常见命令
docker·容器·eureka
高山莫衣2 天前
Docker Desktop导致存储空间不足时的解决方案
docker·容器·eureka
LuckyLay2 天前
Compose 常用命令详解——AI教你学Docker
docker·容器·eureka
没有名字的小羊2 天前
7.可视化的docker界面——portainer
docker·容器·eureka
被困者11 天前
Linux部署Sonic前后端(详细版)(腾讯云)
spring cloud·云原生·eureka
微信公众号:AI创造财富12 天前
Docker 安装 ModelScope(推荐流程)
spring cloud·docker·eureka
2501_9111212313 天前
Docker 高级管理笔记
云原生·eureka
yuren_xia14 天前
Eureka 和 Feign(二)
云原生·eureka
yuren_xia14 天前
Eureka 与 Feign(一)
spring cloud·eureka
mall_090514 天前
Spring Cloud使用Eureka调用接口,超时设置(二)
java·spring cloud·eureka