如何从eureka-server上进行服务发现,负载均衡远程调用服务

这篇具有很好参考价值的文章主要介绍了如何从eureka-server上进行服务发现,负载均衡远程调用服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 在spring cloud的maven的pom文件中添加eureka-client的依赖坐标
    1.         <!--eureka-client依赖-->
              <dependency>
                  <groupId>org.springframework.cloud</groupId>
                  <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
              </dependency>
  2. 添加运行服务的名称以及eureka-server的地址
    1. eureka:
        client:
          service-url:
            defaultZone: http://127.0.0.1:9000/eureka
      spring:
        application:
          #应用的名称,可选
          name: order-service
  3. 需要在RestTemplate这个Bean添加一个@LoadBalanced注解,实现负载均衡策略
    1. package com.app.order.config;
      
      import lombok.extern.slf4j.Slf4j;
      import org.springframework.cloud.client.loadbalancer.LoadBalanced;
      import org.springframework.context.annotation.Bean;
      import org.springframework.context.annotation.Configuration;
      import org.springframework.web.client.RestTemplate;
      
      /**
       * webmvc的相关配置
       *
       * @author Administrator
       */
      @Configuration
      @Slf4j
      public class WebMvcConfig {
      
          /**
           * 注入RestTemplate的Bean
           *
           * @return 返回RestTemplate
           */
          @LoadBalanced
          @Bean
          public RestTemplate restTemplate() {
              return new RestTemplate();
          }
      
      }
      
  4. 在调用远程服务的方法处自动注入RestTemplate,用远程调用的对象服务名代替服务IP地址以及端口号,比如当前示例中需要远程调用user-service的API接口,可这样调用
    1.             // 远程查找用户服务获取用户名信息
                  // url地址
                  // String url = "http://127.0.0.1:8080/users/" + order.getUserId();
                  String url = "http://user-service/users/" + order.getUserId();
                  // 发起远程调用
                  ResultBean resultBean = restTemplate.getForObject(url, ResultBean.class);
  5. 当前示例中user-service的服务实例有两台,注册到eureka-server服务中,启动服务进行远程调用后,服务可以正常运行,在不改变负载均衡算法的前提下,默认的负载均衡算法是轮询
    1. 如何从eureka-server上进行服务发现,负载均衡远程调用服务,spring cloud,eureka,服务发现,负载均衡

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

到了这里,关于如何从eureka-server上进行服务发现,负载均衡远程调用服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 三、eureka-server端和客户端配置文件讲解

    通过这张图理解为什么要进行文件配置

    2024年02月08日
    浏览(31)
  • SpringCloud学习笔记(上):服务注册与发现:Eureka、Zookeeper、Consul+负载均衡服务调用:Ribbon

    SpringCloud=分布式微服务架构的一站式解决方案,是多种微服务架构落地技术的集合体,俗称微服务全家桶。 springboot版本选择: git源码地址:https://github.com/spring-projects/spring-boot/releases/ SpringBoot2.0新特性:https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0-Release springcloud版本选

    2024年02月08日
    浏览(32)
  • 【SpringCloud】从实际业务问题出发去分析Eureka-Server端源码

    前段时间遇到了一个业务问题就是k8s滚动发布Eureka微服务的过程中接口会有很多告警,当时想着应该是Ribbon没有同步到实时的Eureka缓存,导致列表中存在下线服务,于是 通过Redis手动更新了Ribbon缓存(详细实现可以见上篇文章:通过Redis手动更新Ribbon缓存来解决Eureka微服务架

    2024年02月04日
    浏览(31)
  • 启动eureka-server报错:c.n.d.s.t.d.RedirectingEurekaHttpClient : Request execution error. endpoint=Defau

    目录 报错信息: 原因及解决方式 注意事项: 2024-03-17 19:44:51.664  INFO 19448 --- [           main] c.n.d.s.t.d.RedirectingEurekaHttpClient  : Request execution error. endpoint=DefaultEndpoint{ serviceUrl=\\\'http://127.0.0.1:10086/eureka/}, exception=java.net.ConnectException: Connection refused: connect stacktrace=com.sun.jersey.api.

    2024年04月11日
    浏览(27)
  • Nacos(一):简介 如何安装 服务注册与发现 集群 权重 与Eureka区别

    当服务调用越来越多,服务的地址需要管理起来,并实现动态调用而不是硬编码在接口中。此时需要一个注册中心来帮助我们管理服务。    流程如下: 商品微服务注册IP和端口到注册中心 订单微服务先从注册中心获取到商品微服务的IP和端口 订单微服务中使用获取到的IP和

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

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

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

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

    2024年02月10日
    浏览(27)
  • 微服务注册与发现——Eureka

    服务发现(注册)机制 nodejs的Eureka Client开源实现 服务发现组件具备功能: 服务注册表 服务注册与服务发现 服务检查 Eureka架构图 http://localhost:8761/ 微服务工程添加引用 注意添加版本号,否则会下载不下来 增加配置 启动类增加注解 启动服务注册 防止因Eureka Server宕机导致微

    2024年02月04日
    浏览(37)
  • springcloud Eureka服务注册与发现

    代码上传到 :https://github.com/13thm/study_springcloud/tree/main/days3 什么是服务治理 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务治理 什么是服务注册与发现 Eureka采用了CS的设计架构,Eureka Server 作为服务注册功能的服务器,它是服务注册中心。而系统中的其他微服务,使

    2024年01月18日
    浏览(55)
  • 1-Eureka服务注册与发现以及Eureka集群搭建(实操型)

    直接看下面的文章 idea创建maven多模块项目. 简单介绍一下: 父工程: dog-cloud-parent 管理实体项目: dog-po 微服务-服务提供者: dog-provider-8001 微服务-服务消费者: dog-consumer-80 如下: 1.3.1 父工程:dog-cloud-parent pom如下: 1.3.2 管理实体项目:dog-po 如下: 1.3.3 服务提供者:dog-

    2024年02月16日
    浏览(40)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包