系列导航

SpringCloud学习 系列一、 前言-为什么要学习微服务

SpringCloud学习 系列二、 简介

SpringCloud学习 系列三、 创建一个没有使用springCloud的服务提供者和消费者

SpringCloud学习 系列四、微服务中心 Eureka介绍及创建一个Eureka中心服务

SpringCloud学习 系列五、创建生产者和消费者验证微服务中心 Eureka的作用

SpringCloud学习 系列六、服务平滑离线

SpringCloud学习 系列七、EurekaServer集群创建

SpringCloud学习 系列八、OpenFeign

SpringCloud学习 系列九、Ribbon

SpringCloud学习 系列十、服务熔断与降级(1-简介)

SpringCloud学习 系列十、服务熔断与降级(2-方法级别服务降级)

SpringCloud学习 系列十、服务熔断与降级(3-类级别的服务降级)

SpringCloud学习 系列十、服务熔断与降级(4-Dashboard监控仪表盘)

不得不先介绍一个概念

1、CAP  定理

(1) 概念

CAP 定理指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、

Partition tolerance(分区容错性),三者不可兼得。

一致性(C):分布式系统中多个主机之间是否能够保持数据一致的特性。即,当系统数

据发生更新操作后,各个主机中的数据仍然处于一致的状态。

可用性(A):系统提供的服务必须一直处于可用的状态,即对于用户的每一个请求,系

统总是可以在有限的时间内对用户做出响应。

分区容错性(P):分布式系统在遇到任何网络分区故障时,仍能够保证对外提供满足一

致性和可用性的服务。

(2) 定理

CAP 定理的内容是:对于分布式系统,网络环境相对是不可控的,出现网络分区是不可避免的,因此系统必须具备分区容错性。但系统不能同时保证一致性与可用性。即要么 CP,要么 AP。

2、Eureka简介

Eureka 是 Netflix 开发的服务发现框架,本身是一个基于 REST 的服务,主要用于定位运行在 AWS(Amazon Web Services,亚马逊网络服务,亚马逊云)域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,实现 SpringCloud 的服务发现功能。其实,Eureka 就是一个专门用于服务发现的服务器,一些服务注册到该服务器,而另一些服务通过该服务器查找其所要调用执行的服务。可以充当服务发现服务器的组件很多,例如 Zookeeper、Consul、Eureka 等。

3、Eureka  体系架构

官方的图比较全面但是有点复杂为了适合初学者我这边提供一个简单的示意图

说明:上图中为了读者便于理解简化了一些步骤,完整的步骤以官方为准。

4、Eureka与Zookeeper对比

Eureka 与 Zookeeper 都可以充当服务中心,那么它们有什么区别呢?它们的区别主要体

现在对于 CAP 原则的支持的不同。

Eureka:AP

zk:CP

5、创建一个Eureka的工程

(1)创建一个00-eurekaserver-8000的模块

该模块就是Eureka的服务。(该模块非常重要,后面好多工程都要在该基础上进行修改,一定要保证该工程的正确性)

上图先选择这个(可以随便选),后面修改pom.xml文件即可。

(2)工程中需要注意的点:

1、选择srpingboot和springCloud匹配的版本

咱们使用的是如下两个版本

<spring-boot.version>2.1.6.RELEASE</spring-boot.version>

<spring-cloud.version>Greenwich.SR6</spring-cloud.version>

2、添加 Eureka Client 依赖

<dependency>

    <groupId>org.springframework.cloud</groupId>

    <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>

</dependency>

3、修改配置文件

4、启动类增加注解

5、启动工程验证是否正确

浏览器输入http://localhost:8000/如果能见到下图说明工程创建成功。

SpringCloud学习 系列四、微服务中心 Eureka介绍及创建一个Eureka中心服务的更多相关文章

  1. SpringCloud学习系列-Rest微服务构建

    总体介绍 承接着我们的springmvc+mybatis+mysql初级高级课程,以Dept部门模块做一个微服务通用案例Consumer消费者(Client)通过REST调用Provider提供者(S ...

  2. SpringCloud学习系列之一 ----- 搭建一个高可用的注册中心(Eureka)

    前言 本篇主要介绍的是SpringCloud相关知识.微服务架构以及搭建一个高可用的服务注册与发现的服务模块(Eureka). SpringCloud介绍 Spring Cloud是在Spring B ...

  3. SpringCloud学习系列之七 ----- Zuul路由网关的过滤器和异常处理

    前言 在上篇中介绍了SpringCloud Zuul路由网关的基本使用版本,本篇则介绍基于SpringCloud(基于SpringBoot2.x,.SpringCloud Finchley版)中的路由 ...

  4. SpringCloud学习系列之三----- 断路器(Hystrix)和断路器监控(Dashboard)

    前言 本篇主要介绍的是SpringCloud中的断路器(Hystrix)和断路器指标看板(Dashboard)的相关使用知识. SpringCloud Hystrix Hystrix 介绍 Netfl ...

  5. SpringCloud学习系列之六 ----- 路由网关Zuul基础使用教程

    前言 在上篇中介绍了SpringCloud Config的完美使用版本,本篇则介绍基于SpringCloud(基于SpringBoot2.x,.SpringCloud Finchley版)中的路由网关 ...

  6. SpringCloud学习系列之二 ----- 服务消费者(Feign)和负载均衡(Ribbon)使用详解

    前言 本篇主要介绍的是SpringCloud中的服务消费者(Feign)和负载均衡(Ribbon)功能的实现以及使用Feign结合Ribbon实现负载均衡. SpringCloud Feign Fei ...

  7. SpringCloud学习系列之四-----配置中心(Config)使用详解

    前言 本篇主要介绍的是SpringCloud中的分布式配置中心(SpringCloud Config)的相关使用教程. SpringCloud Config Config 介绍 Spring Clou ...

  8. scrapy爬虫学习系列四:portia的学习入门

    系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备:      http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...

  9. DocX开源WORD操作组件的学习系列四

    DocX学习系列 DocX开源WORD操作组件的学习系列一 : http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_sharp_001_docx1.htm ...

  10. CAN总线学习系列之— CAN总线特点介绍

    CAN总线学习系列之— CAN总线特点介绍 CAN 总线作为一种工业界的流行总线广泛应于工业自动化.多种控制设备.交通工具.医疗仪器以及建筑.环境控制等各个行业中,它是是一种多主机局域网,所以这样 一 ...

随机推荐

  1. influxdb: unable to parse points 异常解决总结

    转载请注明出处: influxdb 使用过程经常遇到:unable to parse points  的异常:  unable to parse points 是 InfluxDB 抛出的异常,表示无 ...

  2. 开发必备工具、插件【ME】

    工欲善其事,必先利其器,记录自己开发中常用的工具.插件:  慢慢更新... 一.必备 1.Visual Studio.IntelliJ IDEA .Sublime Text 3 2.TeamViewe ...

  3. Spring整合Quartz简单入门

    创建一个Web项目 导入相关jar包 <?xml version="1.0" encoding="UTF-8"?> <project xmln ...

  4. 开源不挣钱?这个项目上线半年月入超 30w

    很兴奋的告诉大家,Sealos 自从 6 月份上线以来,仅半年时间注册用户已经突破 7万,月收入超过 30w,本文来向大家介绍我们是怎么做开源商业化的.每月平均增速超过 40%,而且这些收入大部分来自 ...

  5. LeetCode5716:好因子的最大数目(数学、快速幂)

    解题思路:因为primeFactors比较大,所以需要使用快速幂. class Solution: def quick_pow(self,base,x): ans = 1 while x>0: ...

  6. pinia状态管理初识

    一款官方推荐的,代替vuex的,新的状态管理工具. 官方网: https://pinia.vuejs.org/zh/introduction.html 主要区别: 去除了modules的概念,每个st ...

  7. 华企盾DSC服务器状态显示“服务未安装”

    在cmd中先删除原服务:sc delete DSEServer 然后重新创建DSEServer所在位置:sc create "DSEServer" binpath= "C ...

  8. 华企盾DSC防泄密系统造成应用程序卡慢、编译卡问题

    1.先看看个人模式是否正常,正常则跟进程有关加密nofile.不启用进程水印.不启用文件夹大小缓存(源码文件去掉需慎重)都关掉.允许进程间访问(procmon排查是否有其它进程访问) 2.检查是否与H ...

  9. Android本地备份功能禁用

    最近部分设备激活客户端后发现本地备份的功能被禁用了,排查原因发现: /** * Allows the device owner to enable or disable the backup serv ...

  10. 使用kubeadm在Centos8上部署kubernetes1.18

    // 查看系统版本 cat /etc/centos-release CentOS Linux release 8.1.1911 (Core) // 如果系统环境为8.0(云服务器默认最大安装环境为8. ...