美文网首页
微服务的前世今生

微服务的前世今生

作者: 剑道_7ffc | 来源:发表于2020-04-23 14:50 被阅读0次

从单体架构到微服务

演进过程

动力:随着业务量的庞大,架构也会越来越复杂

单体架构

将所有功能打包成war或jar包,部署到web容器中


image.png
集群架构

解决业务并行处理能力,降低单机负载;为什么不采用提升单机负载,原因是投入和查出比不高。集群通过增加机器即服务器的横向扩容来分散并发访问流量。


image.png
业务垂直化拆分

通过对业务模块的垂直拆分来业务的耦合度,提升系统的容错性。垂直拆分指可以按照系统的业务功能拆分出多个业务模块。


image.png
服务化改造

通过把子系统共享代码抽离出来形成基础服务来解决冗余代码的问题,SOA是面向服务架构,核心目标是通过服务的流程化来实现业务的灵活性,主要解决信息孤岛,互联互通,业务重用。

微服务架构

微服务架构也是一种面向服务的架构,更强调服务的粒度,所以多个微服务可以组成一个soa服务

微服务和 SOA 架构的区别

微服务是在soa基础上发展起来的,所有他们解决的问题是不一样的。soa主要关注服务的重用性和解决信息孤岛的问题;微服务关注的是通过降低服务的粒度来实现解耦的目的。

Spring Cloud 生态

什么是 Spring-Cloud

spring cloud 可以用来开发微服务,spring cloud 提供了一些可以让开发者快速构建分布式应用的工具,这些服务可以很好的工作在任何分布式环境下。

微服务开发过程中需要解决的问题

网关

客户端调用网关,网关调用多个服务进行聚合成请求的服务,从而减少客户端的调用频次。并且由于网关的聚合,我们还可以在网关层对请求进行统一鉴权和认证; 包括还可以实现限流、请求日志统一记录、 灰度发布等等。类似于biz的功能。

服务的通信和服务发现

通过注册中心来实现

负载均衡

需要一种负载均衡机制来实现请求的分发。

熔断、限流、降级

熔断:防止因请求堆积而导致整个应用雪崩。
降级:当整个系统负载过高时,通过降级某些功能或某些调用从而保证核心业务正常通过。
限流:通过限制访问量来保护系统不被雪崩。

统一配置中心

管理所有的配置。

微服务架构下的组件需求

下面是基于一个请求进来之后,所需要用到的组件和功能


image.png

spring cloud 提 供 了 一 些 解 决 这 类 问 题 的 工 具 , 比 如 服 务 注 册 提 供 了
Eureka/Consoul/zookeeper;远程调用基于 RestTemplate 针对 http 协议调用的封装;负载均衡采用 Ribbon、断路器采用 hystrix;分布式消息基kafka,rabbitMQ;配置中心基于config;链路监控基于 sleuth

Spring Cloud 生态的构建

Spring Cloud 的生态是基于 spring boot 这个微框架来构建的,所以 spring cloud 可以说是基于 spring boot 来对其他框架进行整合。spring boot 并不是一个新的技术,它是基于 spring 框架下对于“约定由于配置(Convention Over Configuration)”理念下的产物,主要是帮助开发人员更容易更快速的创建独立运行和产品级别的基于 spring 框架的应用。

下一代微服务(service Mesh)

什么是 Service Mesh

直接翻译成服务网格。它是一个基础设施层,用于处理服务之间的通信,并且负责请求的可靠传输。

做什么

通过增加一个服务层来做这件事,即service mesh,在每个服务中,会有一个 service mesh 实例,客户端发起一个请求,首先会把请求发送到本地的 service mesh 实例,service mesh 实例中会完成完整的服务之间的调用流程,比如服务发现、负载均衡。最终发送给目标服务,简单来说,它是原有的客户端和服务端之间的一个代理。


image.png

好处

Service Mesh 为业务开发团队降低了门槛,提供了稳定的基础设施,最重要的是,让业务开发团队从微服务实现的具体技术细节中解放出来回归到业务。

相关文章

  • 微服务前世今生

    前言 “微服务”架构一夜之间忽然火遍全球,各种技术大会的主题都和微服务沾边,各种类型企业的软件架构都在提“微服务”...

  • 微服务的前世今生

    从单体架构到微服务 演进过程 动力:随着业务量的庞大,架构也会越来越复杂 单体架构 将所有功能打包成war或jar...

  • 前世今生

    爱上阅读:爱之梦/微散文《前世今生》 “你相信前世吗” “相信, 是彼此相欠的太多,前世...

  • 微信的前世今生

    每一款标志时代的软件,似乎都能在国外找到它的前身,QQ如此,微信亦如此。每天都在使用微信,可是你对微信了解多少? ...

  • 微习惯的前世今生

    《微习惯》一文看完,我做了两件事,反观过去已开始未养成的习惯,放眼未来去实践的习惯。 有一天,和朋友一起跑步,朋友...

  • 微信的前世今生

    在这里我将结合微信各个版本的更新日志还原微信是如何成为一款超极App的,摆脱概念去细化问题的核心 微信怎样诞生:张...

  • 将军在上之男昭女惜重生三世千年孽缘

    前世!今生!来世再续! 前世欠谁!今生还!来世再续前缘! 前世因!今生续!来世果!

  • 微服务架构的前世今生

    传统行业向互联网行业的转型 背景 2012年以后,因为移动互联网的兴起,随着网名数量的增多,需求变化大,用户群体大...

  • 人死,并非如灯灭……

    “今生,是前世的“来生”,是来生的“前世”。在今生中,我们能见到自己的前世与来生。回溯前世,是为了改善今生;回到今...

  • 前世今生来世缘

    谈何前世情 今生还 今生情 来世还 前世孽债 前世还 未了 今生还 今生欠 今生还 谈何来世还 来世欠 来世还 能...

网友评论

      本文标题:微服务的前世今生

      本文链接:https://www.haomeiwen.com/subject/esfbihtx.html