1-微服务概述

微服务架构将单体应用拆分为多个独立服务,通过注册中心和配置中心管理,服务网关处理请求验证与路由。分布式缓存和搜索引擎优化数据访问,消息队列缓解链式调用压力。日志监控和链路追踪确保系统健康,CICD简化部署流程。微服务强调单一职责、面向服务、服务自治和强隔离性,实现高内聚低耦合。
摘要由CSDN通过智能技术生成

微服务架构

  1. 微服务就是将单体应用的模块进行拆分;
  2. 模块之间的连接和沟通通过注册中心解决;
  3. 配置中心主要对所有服务进行统一配置;
  4. 服务网关对客户端请求进行验证,然后路由服务;
  5. 分布式缓存主要为解决服务器中数据库读写压力;
  6. 分布式搜索引擎可快速智能解决数据库搜索查询问题;
  7. 服务在相互调用时会出现链式调用的情况,链路可能会很长。这将导致性能降低,消息队列可以在靠前服务发出请求后以消息的方式通知后续的服务,无需阻塞当前服务;
  8. 集群中的日志和链路调用健康还要介入日志和系统链路监控功能;
  9. 复杂的服务使用人工去部署会麻烦,还要引入CICD功能;

微服务架构图:
image

微服务技术栈:
image

单体与微服务架构

  • 单体架构:业务所有功能在一个项目中,作为一个包发布;好处是架构设计简单,部署成本也比较低,面相简单的项目;缺点是业务之间的耦合度高,扩展难度高,如果项目变大那编译和运行时间都会变慢;
    image

  • 分布式架构:根据业务进行拆分,每个模块作为独立的服务。服务之间相互调用来回去数据;好处是服务之间耦合度降低了,可以进行扩展或者升级,缺点是部署将变得很麻烦,如果需要做集群模式的话还要考虑远程调用和负载的情况;
    image
    所以在微服务架构设计中,就要考虑在多个服务相互远程调用并存在集群情况是会出现的问题:
    image

微服务是经过良好架构设计之后的分布式架构实现,主要有以下特点:

  1. 单一职责:每个模块负责自己的功能,避免出现交叉业务重复开发的情况;好处就是每个业务之间职责更小了,对整个系统的影响就更小了;
  2. 面向服务:每个服务都应该对外暴露业务接口,以便于其他服务调用;
  3. 服务自治:每个服务作为独立的团队,使用独立的技术和数据,进行独立的部署,不同服务之间耦合度解开;
  4. 隔离性强:服务之间会相互调用,所以服务之间还要做好隔离/容错/降级,避免出现级联调用问题;

所有的问题都是为了高内聚低耦合,为了让服务之间能够稳定的实现相互调用。
image

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值