二、Spring Cloud Eureka 简介、快速入门

注册发现中心

Eureka 来源于古希腊词汇,意为“发现了”。在软件领域, Eureka 是 Netflix 在线影片公司开源的一个服务注册与发现的组件,和其他 Netflix 公司的服务组件(例如负载均衡、熔断器、网关等) 一起,被 Spring Cloud 社区整合为 Spring Cloud Netflix 模块。
Eureka 是 Netflix 贡献给 Spring Cloud 的一个框架!Netflix 给 Spring Cloud 贡献了很多框架.

2.Spring Cloud Eureka 和 Zookeeper 的区别

2.1 什么是 CAP 原则(面试)

在分布式 微服务里面 CAP 定理
问:为什么 zookeeper 不适合做注册中心?

CAP 原则又称 CAP 定理,指的是在一个分布式系统中,

一致性(Consistency)

可用性(Availability)

分区容错性(Partition tolerance)(这个特性是不可避免的)

CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。

2.2 分布式特征

在这里插入图片描述

  • C : 数据的一致性 (A,B,C 里面的数据是一致的)

    • Zk 注重数据的一致性。

    • Eureka 不是很注重数据的一致性!

  • A: 服务的可用性

    • (若 zk 集群里面的 master 挂了怎么办)Paxos(多数派)在 zk 里面,若主机挂了,则 zk 集群整体不对外提供服务了,需要选一个新的出来(120s左右)才能继续对外提供服务!
    • Eureka 注重服务的可用性,当 Eureka 集群只有一台活着,它就能对外提供服务
  • P:分区的容错性(在集群里面的机器,因为网络原因,机房的原因,可能导致数据不会同步),它在分布式必须需要实现的特性!

  • 尽管在某种程度上可用性和分区容忍性都关注系统的持续运行能力,但它们侧重点不同:

  • 可用性关注系统在正常操作状态下对用户请求的响应能力,即使系统的某些节点或组件发生故障,也要尽可能保持可用状态,确保用户能够正常访问和使用系统。

  • 分区容忍性关注的是系统在面对网络分区或通信故障时的鲁棒性和弹性,即使节点之间无法直接通信或出现延迟、丢包等问题,系统仍然能够继续运行,不会完全瘫痪。

Zookeeper 注重数据的一致性,CP zk(注册中心,配置文件中心,协调中心)
Eureka 注重服务的可用性 AP eureka (注册中心)

4.Spring Cloud Eureka 快速入门

在这里插入图片描述

4.1 搭建 Eureka-server

4.1.1 创建项目

创建一个springboot工程
在这里插入图片描述

4.1.2 选择依赖

在这里插入图片描述

4.1.3 分析 pom.xml

<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent><!-- 实质还是 springboot 项目--><groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.12.RELEASE</version>
<relativePath/> <!-- lookup parent from repository --></parent>
<groupId>com.bjpowernode</groupId>
<artifactId>eureka-server</artifactId>
<version>1.0</version>
<name>eureka-server</name>
<description>Demo project for Eureka-Server</description>
<properties>
<java.version>1.8</java.version><!-- 这里控制了 springcloud 的版本-->
<spring-cloud.version>Hoxton.SR12</spring-cloud.version>
</properties>
<dependencies><!-- eureka 注册中心的服务端--><dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies><!-- 依赖管理,cloud 的依赖--><dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

4.1.4 修改启动类

在这里插入图片描述

4.1.5 修改配置文件

在这里插入图片描述

4.1.6 访问测试

http://localhost:8761
在这里插入图片描述

4.1.7 分析端口 8761

Eureka-Server 不仅提供让别人注册的功能,它也能注册到别人里面,自己注册自己

所以,在启动项目时,默认会注册自己,我们也可以关掉这个功能。

4.2 搭建 Eureka-client

4.2.1 创建项目 client-a 选择 依赖

在这里插入图片描述

4.2.2 分析 pom.xml

在这里插入图片描述

4.2.3 修改启动类

在这里插入图片描述

4.2.4 修改配置文件

在这里插入图片描述

4.2.5 访问测试

http://localhost:8761
在这里插入图片描述

4.3 同一个服务(客户端)启动多台

4.3.1 IDEA 启动多台服务操作

在这里插入图片描述
在这里插入图片描述

4.3.2 访问查看

在这里插入图片描述

4.4 注册中心的状态认识

UP: 服务是上线的,括号里面是具体服务实例的个数,提供服务的最小单元

DOWN: 服务是下线的

UN_KONW: 服务的状态未知

4.4.1 服务的实例名称

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/7880.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

转载-【AI思维空间】Chat2DB 一款开源数据库客户单工具

卸载 Navicat&#xff0c; xxx 又开源了一款数据库神器&#xff0c;太炸了 Chat2DB 是一款有开源免费的多数据库客户端工具&#xff0c;支持windows、mac本地安装&#xff0c;也支持服务器端部署&#xff0c;web网页访问。和传统的数据库客户端软件Navicat、DBeaver 相比Chat2D…

64MHz 闪存STM32G0B1CEU6(STM32G0B1CCU6)STM32G0B1CBU6引脚配置图、32位微控制器

STM32G0B1 32位微控制器具有最高512KB嵌入式闪存和144kB RAM存储器。该器件采用48-UFQFPN 引脚封装。它支持USB全速主机/设备、集成USB Type-C控制器和收发器、FDCAN协议以及多达8个UART。 STM32G0 32位微控制器 (MCU) 适合用于消费、工业和家电领域的应用&#xff0c;并可随时…

Apache组件POI,将图片下载到Excel文件中并导出。

在日常的工作中&#xff0c;有时我们会遇到需要将数据库表中图片字段下载到Excel中的需求&#xff0c;为方便各位小伙伴今后的开发工作&#xff0c;我将分享出自己写的代码&#xff0c;并指出图片下载到Excel文件中的性能瓶颈问题。 在文章末尾有我上传到 Gitee 上的 Demo案例&…

Redis高可用——哨兵模式

Redis——哨兵模式 一、Redis 哨兵模式1.哨兵模式的作用2.故障转移机制3.主节点的选举 二、搭建Redis 哨兵模式1.修改 Redis 哨兵模式的配置文件&#xff08;所有节点操作&#xff09;2.启动哨兵模式3.查看哨兵信息4.故障模拟5.验证结果 一、Redis 哨兵模式 主从切换技术的方法…

少数人的晚餐

这不是影评。 这是过去现在和未来都必然发生的事情。 如下这句话选自这部电影&#xff1a; P-Power M-Money K-knowledge 但本文与电影无关。 有一句大家经常听到的话&#xff1a; “群众的眼睛是雪亮的” 但事实上更普遍存在的是&#xff1a; P一定掌握在少数人手中&…

数据库性能测试报告总结模板

目录 1计划概述 2参考资料 3术语解释 4系统简介 5测试环境 6测试指标 7测试工具和测试策略 8测试数据收集 9测试结果数据以及截图 9.1Jmeter性能指标 9.2硬件指标图 10 测试结论 需要完整报告模板记得文章末尾找我哦。 1计划概述 目的&#xff1a;找出系统潜在的…

Elasticsearch集群

单点的问题 单台机器存储容量有限&#xff0c;无法实现高存储。 单服务器容易出现单点故障&#xff0c;无法实现高可用。 单服务的并发处理能⼒有限&#xff0c;无法实现高并发。 集群的结构 数据分片:把数据拆分成多份&#xff0c;每一份存储到不同机器节点&a…

[Flask] Cookie与Session

由于HTTP的无状态性&#xff0c;为了使某个域名下的所有网页能够共享某些数据&#xff0c;Cookie和Session应运而生 1.Cookie对象 HTTP是无状态(stateless)协议&#xff0c;一次请求响应结束后&#xff0c;服务器不会留下任何关于对方状态的信息 也就是说&#xff0c;尽管在…

制造企业实施MES系统受到的影响因素有哪些?

实施MES系统会遇到哪些影响因素&#xff1f;或者说企业实施MES系统的交付率为什么低&#xff1f; 我觉得关键点在于&#xff1a;在当前MES产品化程度普遍不高的大环境下&#xff0c;对项目及管理软件本身认知过于简单&#xff0c;且缺失有经验行业人才&#xff0c;是当前大部分…

GitHub打不开的解决方案(超简单)

在国内&#xff0c;github官网经常面临打不开或访问极慢的问题&#xff0c;不挂梯子&#xff08;VPN&#xff0c;飞机&#xff0c;魔法&#xff09;使用体验极差&#xff0c;那有什么好办法解决GitHub官网访问不了的问题&#xff1f;今天小布教你几招轻松访问github官网。 git…

【运维】Windows 通过注册表禁用服务

【运维】Windows 通过注册表禁用服务 以这个服务为例子 Windows Push Notifications User Service 双击查看服务名称 WpnUserService_671f3 打开注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\{服务名称} HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Ser…

wireshark学习

抓包原理 哪种网络情况可以抓到包&#xff1f;&#xff08;1&#xff09;本机环境&#xff08;2&#xff09;集线器环境&#xff08;3&#xff09;交换机环境 交换机环境目前较为常用&#xff0c;这也分为三种情况&#xff08;1&#xff09;端口镜像&#xff08;2&#xff09…