SpringCloud服务注册与发现中心-Eureka

1.服务注册与发现的好处;

假设没有这个东西,那么如果存在a,b,c三个同样的服务;

而现在有一个u服务需要用到a或b或c提供的接口,那么u里面肯定是需要配置这三个服务的地址,然后调用的时候还有问题就是我该选哪个服务来调用呢?

因为他们作用都是等价的;这里就产生了一系列的配置管理问题(包括a,b,c服务地址变了,或者增加了d服务,这些都需要在u里面改配置,还有改负载均衡算法);

现在有了服务注册与发现中心,那么a,b,c它们启动时都会自动将自己的服务标识(a,b,c的服务标识是一样的,因为它们的代码啥的一样,比如都叫user-service,只不过实例id不一样,就像一个exe开启了多个进程)和地址 注册到服务注册与发现中心(当然肯定不止这两个数据,不过这两个是最主要的),而服务消费者则是在调用时是通过服务标识来充当ip:port的,然后具体选择哪个服务实例的负载均衡算法由SpringCloud的RestTemplate内部实现了(@LoadBalanced),这样哪怕是加了新服务d(和a等一样的服务),只需要d也以user-service为服务标识将自己注册进去,u服务自动就能去更新本地的服务列表,调用时也能自动的选择一个健康的服务实例来调用;

2.具体代码:

eureka服务【服务注册与发现中心】(1.x版本eureka服务其实就是一个war包需要运行在tomcat这样支持servlet的服务器中间件里,也可以通过SpingBoot将它集成为一个可运行的jar包)

:https://github.com/Silentdoer/demo-eureka-server.git(可以配置集群,但是这个时候eureka同时也是一个EurekaClient,因为它需要将自己也注册进去)

服务提供者(比如是user-service,给其他服务提供用户信息查询接口之类的)

:https://github.com/Silentdoer/demo-eureka-provider.git

服务消费者(比如是notification-service,获取用户详情信息用于通知相关人员)

:https://github.com/Silentdoer/demo-eureka-consumer.git

原文地址:https://www.cnblogs.com/silentdoer/p/11188744.html

时间: 2024-08-02 06:31:26

SpringCloud服务注册与发现中心-Eureka的相关文章

springcloud微服务系列之服务注册与发现组件Eureka

一.Eurake的简介二.使用Eureka进行服务的注册消费1.创建一个服务注册中心2.创建服务的提供者3.创建服务的消费者总结 一.Eurake的简介 今天我们来介绍下springcloud的核心组件Eureka,Eurake是负责微服务架构中服务治理的功能,负责各个服务实例的注册与发现. Eureka包含了服务器端和客户端组件.服务器端,也被称作是服务注册中心,用于提供服务的注册与发现. 客户端组件包含服务消费者与服务生产者.在应用程序运行时,服务生产者向注册中心注册自己的服务实例,当消费者

构建微服务架构Spring Cloud:服务注册与发现(Eureka、Consul)

Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等操作提供了一种简单的开发方式. Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Spring Cloud Config.Spring Cloud Netflix.Spring Cloud0 CloudFoundry.

Spring Cloud 一:服务注册与发现(Eureka)【Dalston版】

Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理.服务发现.断路器.智能路由.微代理.控制总线.全局锁.决策竞选.分布式会话和集群状态管理等操作提供了一种简单的开发方式. 微服务架构 那么什么是"微服务架构"呢?简单的说,微服务架构就是将一个完整的应用从数据存储开始垂直拆分成多个不同的服务,每个服务都能独立部署.独立维护.独立扩展,服务与服务间通过诸如RESTful API的方式互相调

springcloud服务注册与发现(二)

Spring Cloud Eureka是Spring Cloud Netflix项目下的服务治理模块.而Spring Cloud Netflix项目是Spring Cloud的子项目之一,主要内容是对Netflix公司一系列开源产品的包装,它为Spring Boot应用提供了自配置的Netflix OSS整合.通过一些简单的注解,开发者就可以快速的在应用中配置一下常用模块并构建庞大的分布式系统.它主要提供的模块包括:服务发现(Eureka),断路器(Hystrix),智能路由(Zuul),客户端

springcloud服务注册和发现

微服务架构中,服务发现组件是一个非常关键的组件,服务消费者.服务提供者.服务发现组件的关系大致如下: 各个微服务启动时,将自己的网络地址等信息注册到服务发现组件中,服务发现组件会存储这些信息 服务消费者可从服务发现组件查询服务提供者的网络地址,并使用改地址调用服务提供者的接口 各个微服务与服务发现组件使用一定机制(心跳等)通信,服务发现组件长时间无法与某微服务实例通,就会注销该实例. 下面看看Eureka,它是Netflix(美国著名的在线影片租赁商)开源的服务发现组件,本身是一个基于REST的

SpringCloud用Zookeeper做服务注册与发现中心代码实现

一:Zookeeper用的是3.5.5版本,SpringBoot用的是2.1.6版本,SpringCloud用的是Greenwich.SR2版本,JDK用的是1.8: 服务提供者product-service代码:(这里注意添加了Zookeeper的Discovery) https://github.com/Silentdoer/demo-zookeeper-service-provider 服务消费者(服务提供者自己也可以是消费者)order-service代码:(这里注意添加了Zookeep

SpringCloud服务注册与服务发现之Eureka

Eureka是SpringCloud Netflix的子模块之一,用于云端的服务发现,服务定位,实现云端中间层服务发现和故障转移.服务注册与发现对于微服务系统来说十分的重要,有了服务注册与发现,就省去了每天改服务调用的配置文件的麻烦.你只需要使用服务的标识符,就是可使用服务.它的功能类似与dubbo的注册中心. 服务发现:服务发现是微服务基础架构的关键原则之一,Eureka是Netflix服务发现的一种服务和客户端.这种服务是可以被高可用性配置的和部署,并且在注册的服务当中,每个服务的状态可以互

微服务SpringCloud之服务注册与发现

在找.net core 微服务框架时发现了Steeltoe开源项目,它可以基于Spring Cloud实现.net core和.net  Framework的微服务.正好之前也有学习过SpringBoot,而Spring Cloud是基于SpringBoot的,有了SpringBoot基础上手入门SpringCloud应该也不难,正好我的第一本书<<Spring快速入门>>即将上架,感兴趣的朋友可以多多支持.本篇主要学习服务注册与发现组件Eureka. 在学习之前首先聊一聊为什么会

SpringCloud(二)服务注册与发现

离上一篇微服务的基本概念已经过去了几个月,在写那篇博客之前,自己还并未真正的使用微服务架构,很多理解还存在概念上.后面换了公司,新公司既用了SpringCloud也用了Dubbo+Zookeeper,就像上一篇文章说的,当一个服务是面向外部或者是直接提供给前端调用的,那么就使用SpringCloud,而一些内部公用的,比如一些特定服务(如发送短信),就使用Dubbo+Zookeeper,因为他在内部调用更像调用接一个接口,效率也会比较高,而一些模块型的功能,我们则使用SpringCloud. 在