SpringCloud

一,概述

1.什么是微服务

要了解什么是微服务首先要了解什么是面向服务(SOA)

  面向服务就是将应用程序的不同功能单元(称之为服务)进行拆分,并将这些服务通过接口等联系起来(各服务之间松耦合),想要使用哪个功能,直接进行调用,不会将功能与整个项目紧紧绑定

微服务不是一种技术而是一种思想,是SOA架构下的产物,只要系统的架构符合这种思想,就可以说它是微服务 ,它是聚焦在单一的职责和业务功能,具有独立的进程,能够单独运行的服务,并且与外部服务是通过HTTP进行交互通信的服务

2.微服务与单体架构区别

(1)单体架构所有的模块全都耦合在一块,代码量大,维护困难。

(2)单体架构所有的模块都共用一个数据库,存储方式比较单一。

(3)单体架构所有的模块开发所使用的技术一样。微服务各功能模块可以使用 不同的技术

3.微服务架构的优点

  1. 易于开发和维护,一个微服务只关注一个业务,业务清晰,代码量少

  2. 单个微服务代码量少,启动快

  3. 局部修改容易部署

  4. 技术不受限制

二,SpringCloud介绍

    springcloud是一个完整的微服务架构,提供了所有功能,整个开发项目中所需要的架构功能微服务都有,也就是说整个springcloud就是一个完整的项目,这个架构已经搭建完毕了,用到了直接获取即可,只需要往架构中注入自己的业务代码就可以。

 springcloud是基于springboot 开发的微服务框架,是目前比较完整的微服务解决方案框架,它的内容包括:服务注册(eureka),服务调用(feign) ,负载均衡(Ribbon) ,熔断器(Hystrix)等

 组件介绍

  • 注册中心:Netflix Eureka;

  • 负载均衡:Netflix Ribbon(2020 版本前)、Spring Cloud Loadbalancer(2020 版本后);

  • 熔断器:Netflix Hystrix(2020 版本前)、Resilience4j(2020 版本后);

  • 声明式服务调用组件:Feign(最初属 Netflix 公司,后来移交给 OpenFeign 组织);

  • 网关:Netflix Zuul(2020 版本前)、Spring Cloud Gateway(2020 版本后);

  • 配置中心:Spring Cloud Config;

1.注册中心-Eureka

Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责实现微服务架构中的服务治理功能。

Spring Cloud Eureka 是一个基于 REST 的服务,并且提供了基于 Java 的客户端组件,能够非常方便地将服务注册到 Spring Cloud Eureka 中进行统一管理。

CAP原则

CAP 原则又称 CAP 定理,指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可得兼。

Eureka是基于AP原则建立的

为了保证高可用性,data1和data2都有在有限时间内返回。同样由于网络的不可靠,在有限时间内,data2有可能还没收到data1发来的数据更新消息,这时候返回给客户端的可能是旧的数据,和访问data1的数据是不一致的,也就是违法了C。

也就是说,在保证A和P的情况下,是无法同时保证C的。

 2.负载均衡-Ribbon

Ribbon 又叫 负载均衡器

负载均衡是我们处理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cqq00

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值