演示客户端应用如何访问注册在EurekaServer里的微服务

一、概念和定义

采用Ribbon或Feign方式访问注册到EurekaServer中的微服务。
1、Ribbon实现了客户端负载均衡,
2、Feign底层调用Ribbon
3、注册在EurekaServer中的微服务api,不通过ip访问,而是通过ServiceId访问
其中ServiceId即配置项spring.application.name标识的注册到EurekaServer中的名称。
使用Feign/Ribbon客户端访问微服务的api,如:
http://ServiceHelloA/HelloA?name=tom
http://ServiceHelloB/HelloB?name=Jerry
说明客户端负载均衡Ribbon解释了ServiceHelloA映射的ip+端口.

二、开发案例

1、Ribbon服务代码
@Service
public class HelloARibbonService {

@Autowired
RestTemplate restTemplate;

public String visitHelloA(String name) {
return restTemplate.getForObject("http://SERVICEHELLOA/HelloA?name="+name,String.class);
}

}

2、Feign服务代码
@FeignClient(value = "SERVICEHELLOA")
public interface HelloAFeignService {

@RequestMapping(value = "/HelloA",method = RequestMethod.GET)
String visitHelloA(@RequestParam(value = "name") String name);

}

三、案例说明

1、通过Ribbon访问HelloA

http://localhost:8301/HelloARibbon?name=lexiaofei

2、通过Feign访问HelloA

http://localhost:8321/HelloAFeign?name=liangshengqi

发现服务端调用是在8201 和 8202之间负载均衡的。

四、代码下载

https://github.com/lexiaofei/workspace_SpringRibbonFeign.git

SpringCloud的EurekaClient : 客户端应用访问注册的微服务(无断路器场景)相关推荐

  1. SpringCloud学习一(回顾之前学的微服务知识点、springcloud入门概述、服务提供者和消费者)

    一.回顾之前,如何学习springcloud 回顾之前的知识? JavaSE 数据库 前端 Servlet Http Mybatis Spring SpringMVC SpringBoot Dubbo ...

  2. SpringCloud(第 002 篇)简单电影微服务类(消费方,而提供方为用户微服务)

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 002 篇)简单电影微服务类(消费方,而提供方为用户微服务) 一.大致介绍 微服务与微服务之间通过 ...

  3. SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群...

    2019独角兽企业重金招聘Python工程师标准>>> SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群 一 ...

  4. SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群... 1

    SpringCloud(第 054 篇)简单 Quartz-Cluster 微服务,采用注解配置 Quartz 分布式集群 - 一.大致介绍 1.因网友提到有没有采用注解式配置的Quartz例子,因此 ...

  5. SpringCloud与微服务Ⅷ --- Hystrix断路器

    复杂的分布式体系结构中的应用程序有数十个依赖关系,每个依赖关系在某些时候将不可避免地失败. 服务雪崩 多个微服务之间调用的时候,假设微服务调用服务B和微服务C,微服务B和微服务C又调用其他服务,这就是 ...

  6. Nacos服务注册中心(微服务)

    为什么要用服务注册中心? 在微服务中,首先需要面对的问题就是如何查找服务(软件即服务), 其次就是如何在不同的服务之间进行通信? 如何更好更方便的管理应用中的每一个服务,如何建立各个服务之间联系的纽带 ...

  7. SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十四)

    服务熔断功能 sentinel整合ribbon+openFeign+fallback Ribbon系列 启动nacos和sentinel 提供者9003/9004 新建cloudalibaba-pro ...

  8. SpringCloud Alibaba Sentinel实现熔断与限流-微服务(三十三)

    @SentinelResource 按资源名称限流+后续处理 启动Nacos成功 http://localhost:8848/nacos/#/login 启动Sentinel成功 java -jar ...

  9. SpringCloud+SpringBoot+OAuth2+Spring Security+Redis实现的微服务统一认证授权

    因为目前做了一个基于Spring Cloud的微服务项目,所以了解到了OAuth2,打算整合一下OAuth2来实现统一授权.关于OAuth是一个关于授权的开放网络标准,目前的版本是2.0,这里我就不多 ...

最新文章

  1. LocationDemo has leaked ServiceConnection 异常并且无法定位的时候
  2. python使用openCV图像加载(转化为灰度图像)、使用filter2D函数对图像进行锐化(Sharpen Images)
  3. Ubuntu 下Mysql常用命令
  4. Internet上最危险的词语是什么?
  5. php 将一个字符串转换成数组,PHP将一个字符串转换成数组
  6. 计组-输入输出系统小结
  7. Build 2016,你可能忽视的几个细节
  8. Spring3.1+Quertz1.8实现多个计划任务
  9. 卷王李富贵算法每日一题--分治算法(三)--逃亡
  10. python re模块详解_python与正则表达式:re模块详解
  11. Python+pywin32操作Excel文件常用功能(268行代码+注释)
  12. .NET 3.5(14) - XLINQ(LINQ to XML)之针对XML文件的添加、查询、更新和删除
  13. [软件]Beyond Compare
  14. 【DotNet加密方式解析】-- 好文收藏
  15. 【Android】Android实现自定义带文字和图片的Button
  16. Android中经常使用的工具类02
  17. 使用Eclipse统计自己项目程序代码量【实测可用】
  18. 分享大学生关于创新创业的想法,包括外卖私人订制化,网购衣服3D化远程试衣,睡眠耳机开发等等创新创业想法。
  19. nebula模拟器_Nebula街机模拟器使用方法 Nebula街机模拟器怎么用
  20. c# Pdf文件加密和解密

热门文章

  1. Android 自己主动化測试之------ Monkey工具
  2. 我的第五个程序 java的JDBC连接mysql数据库 实现输入查询
  3. 目前常用的开源服务器端技术
  4. MATLAB脚本显示滤波器系数
  5. 微软中文论坛2010新年Party手记
  6. 用Winhex手工定位NTFS文件系统下的文件
  7. java.lang.NullPointerException: Project directory not specified
  8. BZOJ3437:小P的牧场(斜率优化DP)
  9. 构建第一个Spring Boot2.0应用之项目创建(一)
  10. 改用MyAnalyzer的KMeans聚类算法