Springcloud笔记(2)-Eureka服务注册

Eureka服务注册

服务注册,发现。

在Spring Cloud框架中,Eureka的核心作用是服务的注册和发现,并实现服务治理。

Eureka包含两个组件:Eureka Server和Eureka Client。

Eureka Server提供服务注册服务,各个节点启动后,会在Eureka Server中进行注册,这样Eureka Server中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到。

Eureka Client用于简化与Eureka Server的交互,在应用启动后,将会向Eureka Server发送心跳,如果Eureka Server在多个心跳周期内没有接收到某个节点的心跳,Eureka Server将会从服务注册表中把这个服务节点移除。

本文参考:springcloud教程 -- 1.快速搭建入门级demo,看这一篇就够了-CSDN博客

eureka工程

主要依赖

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

新建一个服务,需要在主工程上右键选择new->module

j-cloud-server-eureka的启动类需加上注解@EnableEurekaServer, 来声明其是一个基于Eureka的服务注册发现中心

eureka的配置文件,定义了defaultZone: http://jorian:123456@localhost:8761/eureka

启动主程序,访问http://localhost:8761/

可以看到没有注册任务服务。

生产者模块

j-cloud-provider1

依赖

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

该服务的application中有eureka配置

启动类如下,添加注解:@EnableEurekaClient来声明其是一个client(生产者或者消费者,在这里他是生产者)

启动该程序,在euraka可以看到该服务已被注册

消费者模块

创建两个provider

1、两个生产者要用同样的名称,代表同一个应用的两个实例

负载均衡

由于eureka配置了ribbon负载均衡策略,消费者的请求会在客户端被决定好发送到哪台服务提供者进行处理。

新建一个provider2注册到eureka,并启用,重复访问消费者地址N次,http://localhost:8001/hello,会发现返回结果在两个provider切换,实现了负载均衡

源码:2504973175/j-cloud - 码云 - 开源中国 (gitee.com)

相关推荐
想进大厂的小王2 小时前
Spring-cloud 微服务 服务注册_服务发现-Eureka
微服务·eureka·服务发现
aloha_78912 小时前
从零记录搭建一个干净的mybatis环境
java·笔记·spring·spring cloud·maven·mybatis·springboot
茶馆大橘15 小时前
微服务系列五:避免雪崩问题的限流、隔离、熔断措施
java·jmeter·spring cloud·微服务·云原生·架构·sentinel
荆州克莱19 小时前
[FE] React 初窥门径(四):React 组件的加载过程(render 阶段)
spring boot·spring·spring cloud·css3·技术
Genius Kim1 天前
SpringCloud Sentinel 服务治理详解
spring cloud·sentinel·php
为美好的生活献上中指1 天前
Java学习Day60:微服务总结!(有经处无火,无火处无经)
java·spring boot·spring cloud·微服务·sentinel·jetty
licy__1 天前
Docker 基础命令简介
docker·云原生·eureka
BUG指挥官1 天前
深度解析阿里的Sentinel
spring boot·spring·spring cloud·sentinel
WANT_如初1 天前
SpringCloud-Eureka注册中心
java·spring cloud