青柠开车Spring Cloud(三) —— Spring cloud Eureka

编程入门 行业动态 更新时间:2024-10-27 12:26:52

青柠开车Spring <a href=https://www.elefans.com/category/jswz/34/1771354.html style=Cloud(三) —— Spring cloud Eureka"/>

青柠开车Spring Cloud(三) —— Spring cloud Eureka

项目源码github地址

  • 什么是Eureka
  • 快速入门
    • 创建spring boot项目
    • 引入spring cloud配置
    • 引入Eureka依赖jar包
    • application.properties的配置
    • @EnableEurekaServer注解
    • 管理界面一览

什么是Eureka

分三部分来说一下这个图:

  • 首先:比方一个人,去警察局报案,举报某人有重大嫌疑。
  • 然后:这时候民警就要根据报案人提供的信息,去信息平台查询公民信息,核实信息准确性,之后再进一步分析案情,制定下一步行动计划。
  • 其次:在公民办理身份证的时候,会把信息注册到信息平台,或者每次人口普查也会跟新一部分信息。不光是公民的信息,办案民警的信息也必须在这个平台注册。

那么这个信息平台就相当于我们的Eureka注册中心,业务模块呢,就是公民,民警就是zuul我们的api网关了。
这里小伙伴们再想一下,如果没有这个信息平台,那么民警找一个人岂不是就像大海捞针一样困难吗!所以这也正体现了Eureka注册中心在spring cloud中的地位,承载着所有服务的注册工作。

快速入门

官方github demo
官方文档

创建spring boot项目

首先我们需要创建一个基于spring boot的多模块项目

pom.xml指定spring boot版本


<!-- 指定 spring boot 版本 -->
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.1.RELEASE</version>
</parent>

引入spring cloud配置


<!-- 指定 spring cloud 版本 -->
<dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>Finchley.SR1</version><type>pom</type><scope>import</scope></dependency></dependencies>
</dependencyManagement>

引入Eureka依赖jar包


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

application.properties的配置


server.port= 8761eureka.client.registerWithEureka= false
eureka.client.fetchRegistry= false
# 是否检索服务
eureka.client.fetch-registry=false
# 关闭注册中心的保护机制,否则无法及时发现下线的服务
eureka.server.enable-self-preservation=false

更多的Eureka配置选项,请参阅EurekaInstanceConfigBean和EurekaClientConfigBean

@EnableEurekaServer注解


/*** @author : R&M www.qnloft.com/blog*         2018/9/10 15:10*         spring-cloud*         org.qnloft.eureka*/
@SpringBootApplication
@EnableEurekaServer
public class EurekaApplication {public static void main(String[] args) throws Exception {SpringApplication.run(EurekaApplication.class, args);}}

管理界面一览

现在我们启动项目,如果需要看我的项目源码,传送门在这里,打开浏览器,输入:http://127.0.0.1:8761,会出现如下界面

Eureka管理界面共分四部分:

  • 系统状态:可以展示运行环境、数据中心、系统时间、项目运行时长等信息

  • 项目一览表:现在当前注册中心中注册的全部节点。点击项目ip地址或进入一个http://ip:端口号/actuator/info这个请求地址中。

    eureka实例的状态页面和健康监控的url默认为spring boot actuator提供的/info端点和/health端点。我们必须确保Eureka客户端的/health端点在发送元数据的时候,是一个能够被注册中心访问到的地址 ,否则服务注册中心不会根据应用的健康检查来更改状态(仅当开启了healthcheck功能时,以该端点信息作为健康检查标准)。而如果/info端点不正确的话,会导致在Eureka面板中单击服务时,无法访问到服务实例提供的信息接口。

    大多数情况下,我们不需要修改这个几个url配置。但是当应用不使用默认的上下文(context path或servlet path,比如配置server.servletPath=/test),或者管理终端路径(比如配置management.contextPath=/admin)时,我们需要修改健康检查和状态页的url地址信息。

    application.yml配置文件如下:

    //下面配置为相对路径,也支持配置成绝对路径,例如需要支持https
    eureka.instance.health-check-url-path=${server.context-path}/health
    eureka.instance.status-page-url-path=${server.context-path}/info
  • 一般信息:显示了内存占率、CPU占用、运行时间等信息

  • 实例信息:部署服务器地址,服务状态

  • 最后1000个启动:其实就是1000条注册信息日志

转载于:.html

更多推荐

青柠开车Spring Cloud(三) —— Spring cloud Eureka

本文发布于:2023-07-02 20:38:51,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/996190.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Cloud   Spring   Eureka   cloud

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!