微服务学习笔记

一、概念

将一个系统按业务划分成多个子系统,每个子系统都是完整的,可独立运行的,子系统间的交互可通过HTTP协议进行通信(也可以采用消息队列来通信,如RoocketMQ,Kafaka等)。

1.1 微服务特点

● 解耦:同一系统内的服务大部分可以被解耦。因此应用,作为一个整体,可以轻易地被构建、修改和扩展。

● 组件化:微服务可以被看成相互独立的组件,这些组件可以被轻易地替换和升级。

● 业务能力:微服务很小,它们可以专注于某种单一的能力

● 自治:开发者和团队可以独立地工作,提高开发速度。

● 持续交付:允许持续发布软件新版本,通过系统化的自动手段来创建、测试和批准新版本。

● 职责明确:微服务不把应用看成一个又一个的项目。相反,它们把应用当成了自己需要负责的项目。

● 去中心化管理:关注于使用正确的工具来完成正确的工作。这也就是说,没有标准化的方式或者技术模式。开发者们有权选择最好的工具来解决问题。

● 敏捷性:微服务支持敏捷开发。任何新功能都可以被快速开发或丢弃。

1.2 微服务优势

● 独立开发:基于各个微服务所独有的功能,它们可以被轻易开发出来。

● 独立部署:基于它们所提供的服务,它们可以被独立地部署到应用中。

● 错误隔离:即便其中某个服务发生了故障,整个系统还可以继续工作。

● 混合技术栈:可以使用不同的语言和技术来为同一个应用构建不同的服务。

● 按粒度扩展:可以根据需求扩展某一个组件,不需要将所有组件全部扩展。

1.3 分布式服务流程

image-20230903174530600

1.4 技术栈

  • 微服务治理:注册发现,远程调用,负载均衡,配置管理,网关路由,流量控制,系统保护,服务授权,熔断降级,分布式事务,TCC模型,AT模型,Seata
  • 异步通信技术:MQ消息模型,消息堆积问题,SpringAMQP,仲裁队列,消息可靠性,延迟队列,镜像集群,延迟队列,数据持久化
  • 缓存技术:缓存穿透、雪崩,SrpingDataRedis,Redis主从复制,OpenResty,缓存数据同步,Nginx本地缓存,Redis持久化,多级缓存分层,Redis分片集群,Lua脚步,Redis数据结构
  • DevOps:Dockerfile,DockerCompose,GrayLog,Jenkins,SkyWalking,Docker使用,Kubernetes
  • 搜索技术:DSL语句,ES集群,RestAPI,集群脑裂,竞价排名,聚合统计,自动补全,地理坐标,拼音分词

1.5 学习路线

  • 微服务治理:
    • Eureka
    • OpenFeign
    • 网关Gateway
    • 配置中心Nacos
  • Docker
    • 原理
    • 使用
    • Dockerfile
    • DockerComposer
  • 异步通信
    • 同步和异步
    • MQ技术选型
    • SpringAMQP
    • 消费者限流
  • 分布式搜索
    • DSL语句
    • HighLevelClient
    • 拼音搜索
    • 自动补全
    • 竞价排名
    • 地理搜索
    • 聚合统计
    • 分片集群
  • 微服务保护
    • 流量控制
    • 系统保护
    • 熔断降级
    • 服务授权
  • 分布式事务
    • XA模式
    • TCC模式
    • AT模式
    • Saga模式
  • 分布式缓存
    • 数据持久化
    • Redis主从集群
    • 哨兵机制
    • Redis分片集群
  • 多级缓存
    • 多级缓存分层
    • Nginx缓存
    • Redis缓存
    • Canal数据同步
  • 可靠消息服务
    • 消息第三方确认
    • 惰性队列
    • 延迟队列
    • 镜像集群
      分层
    • Nginx缓存
    • Redis缓存
    • Canal数据同步
  • 可靠消息服务
    • 消息第三方确认
    • 惰性队列
    • 延迟队列
    • 镜像集群
    • 仲裁队列
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值