解决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>

再次启动运行成功

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

相关推荐
biubiubiu07062 天前
Docker 快速通关
docker·容器·eureka
小江的记录本2 天前
【Docker】Docker系统性知识体系与命令大全(镜像、容器、数据卷、网络、仓库)
java·网络·spring boot·spring·docker·容器·eureka
小江的记录本2 天前
【Docker】《 Docker 高频常用命令速查表 》
java·前端·后端·http·docker·容器·eureka
程序员 沐阳3 天前
Docker 命令完全指南:从入门到实战
docker·容器·eureka
繁星星繁3 天前
Docker(一)
java·c语言·数据结构·c++·docker·容器·eureka
xmlhcxr3 天前
kubernetes(K8s)基础配置及资源使用详解
docker·云原生·eureka·k8s
无人机9013 天前
Delphi网络编程综合实战:多协议网络工具开发(TCP/UDP/HTTP三合一)
sqlserver·eureka·时序数据库·etcd
俗世慵人4 天前
docker随笔
docker·容器·eureka
xuefeiniao4 天前
本地可以Docker拉取,线上服务器无法拉去镜像,多个ai都无法解决
服务器·docker·eureka
€8114 天前
Java入门级教程29——Spring Cloud:Eureka 注册发现 + MySQL 数据交互 + 负载均衡
java·开发语言·mysql·spring cloud·eureka·负载均衡