Java----使用eureka进行注册连接(微服务简单实现)

这篇具有很好参考价值的文章主要介绍了Java----使用eureka进行注册连接(微服务简单实现)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        当采用微服务架构时,各个业务流程被逐一分解,虽说是分解,但还是要进行连接的,最简单的就是使用http请求,将他们联系起来,通过给容器注入restTemplate,然后使用内置的方法进行请求,但是在请求过程中,难免就会涉及请求地址,请求路径之类,而这些变量是会随之改变的,也就是常说的硬编码,要改就要整个路劲都改了。而通过使用我们的eureka就可以解决这类,问题:

        在eureka中,不是根据项目的路径进行寻找,而是通过在yaml文件中定义的项目名称,一个名称可以对应多个项目,使用负载均衡算法,可以优化对同名项目的调用情况。使用eureka的流程首先就是对各个流程服务进行注册,当需要哪个服务时,就指明目标项目名称,来我们的eureka里面拿。由eureka统一管理,这样就可以减少硬编码带来的不便。使用eureka也是极其简单,只需要三步:

        第一步:创建eureka服务的服务,专门用来管理所有的注册信息:

在该模块中需要导入如下pom:

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

然后在其启动类中,需要加入如下注解(@EnableEurekaServer),就可以开启eureka服务,注意此处是服务端!

@EnableEurekaServer
@SpringBootApplication
public class EurekaApplication {
    public static void main(String[] args) {
        SpringApplication.run(EurekaApplication.class,args);
    }
}

配置yaml文件(规定允许的端口号,项目名称,还有这个服务端的路径,供其他业务进行注册使用):

server:
  port: 1008
spring:
  application:
    name: eurekaserver
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:1008/eureka

        第二步,对需要由eureka管理的服务导入如下pom,注意此处的服务为客户端,需要使用eureka来管理自己的服务:

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

配置客户端的yaml文件(给项目起名,还有注册的路径):

spring:
  application:
    name: orderserver
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:10086/eureka

        第三步,也就是客户端通过eureka拉取其他客户端的数据,此处使用向eureka发送http请求,不需要通过路径而是通过项目名称进行访问。以下是在service层的示例代码:

    public Order queryOrderById(Long orderId) {
        // 1.查询订单
        Order order = orderMapper.findById(orderId);
//以下的http后跟着项目的名称即可访问
        String url = "http://userserver/user/" + order.getUserId();
        User user = restTemplate.getForObject(url,User.class);
        order.setUser(user);

        // 4.返回
        return order;
    }

如此下来便可以通过eureka完成微服务架构间的联系了!

效果如下(所有在线的服务都会在最下方位置出现,同名服务采用负载均衡调整被调用):

Java----使用eureka进行注册连接(微服务简单实现),java,eureka,微服务,springcloud,springboot

 文章来源地址https://www.toymoban.com/news/detail-557904.html

到了这里,关于Java----使用eureka进行注册连接(微服务简单实现)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Eureka注册中心:实现微服务架构下的服务发现与治理的艺术(一)

    本系列文章简介:         在本系列文章中,我们将深入探讨 Eureka 注册中心在微服务架构中的应用和实践。我们将介绍 Eureka的基本原理、关键特性以及配置和优化方法 。同时,我们还将分享如何通过 监控和日志分析 来保障Eureka注册中心的稳定运行。希望通过本文的阅

    2024年02月21日
    浏览(49)
  • Spring Cloud Eureka 服务注册和服务发现超详细(附加--源码实现案例--及实现逻辑图)

    这篇文章先讲述一下Eureka的应用场景、代码实现案例,多个服务模块注册到Euraka中,服务之间的调用实现我会再下一篇文章中进行讲解! Eureka主要是做: 注册发现中心 服务注册与发现的组件 说到Eureka不得不提到了CAP,那么什么是CAP原则呢,下面一起来看下! CAP 原则: 又称

    2024年02月15日
    浏览(105)
  • JAVA开发(分布式部署微服务注册到Eureka出现registration status: 204错误)

    将服务注册到多个Eureka出现有点的服务只注册到一个Eureka有点的服务可以注册到多个Eureka的问题,有的注册不上,报错:registration status: 204 Eureka1: Eureka2:  从截图可以看出有两台服务器上的 HN-BASE-ADMIN 和HN-BLOCKCHAIN-BUSINESS都可以注册到Eureka1 HN-BASE-GATEWAY分别都只有一台服务器

    2024年02月08日
    浏览(39)
  • Eureka(服务注册和发现)——Eureka的简介和原理 & Eureka的使用和分析 & 心跳续约策略,服务的下线和剔除,自我保护 & Eureka集群的搭建

    Eureka:服务注册与发现组件,用于实现服务的自动注册与发现,Spring Cloud Eureka 是对Netflix公司的Eureka的二次封装,它实现了服务治理的功能,Spring Cloud Eureka提供服务端与客户端,服务端即是Eureka服务注册中心,客户端完成微服务向Eureka服务的注册与发现。服务端和客户端均采

    2024年02月05日
    浏览(45)
  • 微信小程序 连接云数据库(不使用云函数)进行 登录、注册、查询(包括模糊查询)快速实现 亲测可用

    当连接MySQL的时候总是出现各种各样的小问题,可以选用微信小程序自带的云数据库 注:测试号不能建立云数据库 按图中步骤来 第4步中,有两种添加方式 第一种 第二种 注意: 如果你是粘贴复制的,他会报错 非数字字符\\\"无法使用外部字符串表示法位于第1行 。这时,在第

    2023年04月20日
    浏览(61)
  • WEB通讯技术。前端实现SSE长连接,nodejs+express搭建简单服务器,进行接口调试,通过curl请求数据

    长连接(Keep-Alive)是一种HTTP/1.1的持久连接技术,它允许客户端和服务器在一次TCP连接上进行多个HTTP请求和响应,而不必为每个请求/响应建立和断开一个新的连接。长连接有助于减少服务器的负载和提高性能。 长连接的HTTP请求方法与普通HTTP请求方法相同,可以使用GET、P

    2024年02月09日
    浏览(53)
  • 【SpringCloud】Eureka原理分析、搭建Eureka服务、服务注册、服务发现

    🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 当有两个服务,第一个服务需要远程调用第二个服务,采用的方式是发起一次HTTP请求,在之前的代码中是将服务提供者的ip和端口号硬编码到

    2024年02月07日
    浏览(50)
  • eureka服务注册和服务发现

    我们要在orderservice中根据查询到的userId来查询user,将user信息封装到查询到的order中。 一个微服务,既可以是服务提供者,又可以是服务消费者,因此eureka将服务注册、服务发现等功能统一封装到了eureka-client端

    2024年02月10日
    浏览(38)
  • 1.2 eureka注册中心,完成服务注册

    目录 环境搭建 搭建eureka服务 导入eureka服务端依赖 编写启动类,添加@EnableEurekaServer注解 编写eureka配置文件 启动服务,访问eureka Euraka服务注册 创建了两个子模块 在模块里导入rureka客户端依赖  编写eureka配置文件 添加Services 创建父工程,父工程中导入spring cloud的依赖,用来统

    2024年02月14日
    浏览(42)
  • 什么是Eureka?以及Eureka注册服务的搭建

         导包  这是默认的Eureka server 的地址端口号为8761 如果我想用,子集的地址和自己的端口号,那么得在 yml配置文件里去写响应的配置,具体如下面的代码块实现  yml 主启动类 配置文件配置了,相当于把Eureka-server 那个类加载到IOC容器里供spring使用 然后允许就可以了,就

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包