I'm spiderman I'm spiderman
首页
  • 中间件
  • 基础架构
  • 微服务
  • 云原生
  • Java
  • Go
  • PHP
  • Python
  • 计算机网络
  • 操作系统
  • 数据结构
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
关于
  • 分类
  • 标签
  • 归档

spiderman

快乐学习,快乐编程
首页
  • 中间件
  • 基础架构
  • 微服务
  • 云原生
  • Java
  • Go
  • PHP
  • Python
  • 计算机网络
  • 操作系统
  • 数据结构
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
关于
  • 分类
  • 标签
  • 归档
  • 中间件

  • 基础架构

  • 微服务

    • 微服务基本原理
    • 云原生

    • 大数据

    • 架构设计
    • 微服务
    spiderman
    2022-12-23
    目录

    微服务基本原理

    # 微服务基本原理

    # SOA、分布式、微服务之间有什么关系和区别?

    1. 分布式架构是指将单体架构中的各个部分拆分,然后部署不同的机器或进程中去,SOA和微服务基 本上都是分布式架构的
    2. SOA是⼀种⾯向服务的架构,系统的所有服务都注册在总线上,当调⽤服务时,从总线上查找服务 信息,然后调⽤
    3. 微服务是⼀种更彻底的⾯向服务的架构,将系统中各个功能个体抽成⼀个个⼩的应⽤程序,基本保 持⼀个应⽤对应的⼀个服务的架构

    # 什么是服务雪崩?什么是服务限流?

    1. 当服务A调⽤服务B,服务B调⽤C,此时⼤量请求突然请求服务A,假如服务A本身能抗住这些请 求,但是如果服务C抗不住,导致服务C请求堆积,从⽽服务B请求堆积,从⽽服务A不可⽤,这就 是服务雪崩,解决⽅式就是服务降级和服务熔断。
    2. 服务限流是指在⾼并发请求下,为了保护系统,可以对访问服务的请求进⾏数量上的限制,从⽽防 ⽌系统不被⼤量请求压垮,在秒杀中,限流是⾮常重要的。

    # 什么是服务熔断?什么是服务降级?区别是什么?

    1. 服务熔断是指,当服务A调⽤的某个服务B不可⽤时,上游服务A为了保证⾃⼰不受影响,从⽽不再 调⽤服务B,直接返回⼀个结果,减轻服务A和服务B的压⼒,直到服务B恢复。
    2. 服务降级是指,当发现系统压⼒过载时,可以通过关闭某个服务,或限流某个服务来减轻系统压 ⼒,这就是服务降级。

    相同点:

    1. 都是为了防⽌系统崩溃
    2. 都让⽤户体验到某些功能暂时不可⽤

    不同点:熔断是下游服务故障触发的,降级是为了降低系统负载

    # 怎么拆分微服务?

    拆分微服务的时候,为了尽量保证微服务的稳定,会有⼀些基本的准则:

    1. 微服务之间尽量不要有业务交叉。
    2. 微服务之前只能通过接⼝进⾏服务调⽤,⽽不能绕过接⼝直接访问对⽅的数据。
    3. ⾼内聚,低耦合。

    # 在项⽬中是怎么来保证微服务敏捷开发的

    • 开发运维⼀体化。
    • 敏捷开发: ⽬的就是为了提⾼团队的交付效率,快速迭代,快速试错
    • 每个⽉固定发布新版本,以分⽀的形式保存到代码仓库中。快速⼊职。任务⾯板、站⽴会议。团队 ⼈员灵活流动,同时形成各个专家代表
    • 测试环境- ⽣产环境 -开发测试环境SIT-集成测试环境-压测环境STR-预投产环境-⽣产环境PRD
    • 晨会、周会、需求拆分会
    #微服务
    直播技术
    云原生Devops应用

    ← 直播技术 云原生Devops应用→

    最近更新
    01
    innovation create future
    12-13
    02
    RabbitMQ
    12-06
    03
    StarRocks的应用
    09-11
    更多文章>
    Theme by Vdoing | Copyright © 2022-2024 spiderman | 粤ICP备2023019992号-1 | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式