第一章 单机应用到分布式架构演进

1.传统单机-分布式架构演进历史

  • 单机架构
    • 优点: 易于测试 便于集成 小型项目友好
    • 缺点: 开发速度慢 启动时间长 依赖庞大
  • 分布式架构
    • SOA :Service Oriented Architecture 面向服务的架构 其中包含多个服务, 服务之间通过相互依赖最终提供一系列的功能, 一个服务 通常以独立的形式存在与操作系统进程中, 各个服务之间 通过网络调用
    • 微服务:将一个大的单体应用进行细粒度的服务化拆分,每个拆分出来的服务各自独立打包部署,各个服务之间 通过网络调用
    • 优点:易开发、理解和维护、独立的部署和启动
    • 缺点:分布式系统-》分布式事务问题、需要管理多个服务-》服务治理

2.微服务架构常见的核心组件

  • 网关
    • 路由转发 + 过滤器
      • /api/v1/video/ 视频服务
      • /api/v1/order/ 订单服务
      • /api/v1/user/ 用户服务
  • 服务发现注册
    • 调用和被调用方的信息维护
  • 配置中心
    • 管理配置,动态更新 application.properties
  • 链路追踪
    • 分析调用链路耗时 例子:下单-》查询商品服务获取商品价格-》查询用户信息-》保存数据库
  • 负载均衡器
    • 分发流量到多个节点,降低压力
  • 熔断
    • 保护自己和被调用方

3.微服务架构常见解决方案

  • ServiceComb
    • 华为内部的CSE(Cloud Service Engine)框架开源, 一个微服务的开源解决方案,社区相对于下面几个比较小
    • 文档不多,通信领域比较强

  • dubbo

  • SpringCloud
    • 全家桶+轻松嵌入第三方组件(Netflix 奈飞)
    • 官网:https://spring.io/projects/spring-cloud
    • 配套
      • 通信方式:http restful
      • 注册中心:eruka
      • 配置中心:config
      • 断路器:hystrix
      • 网关:zuul/gateway
      • 分布式追踪系统:sleuth+zipkin

  • Spring Alibaba Cloud
    • 全家桶+阿里生态多个组件组合+SpringCloud支持
    • 官网 https://spring.io/projects/spring-cloud-alibaba
    • 配套
      • 通信方式:http restful
      • 注册中心:nacos
      • 配置中心:nacos
      • 断路器:sentinel
      • 网关:gateway
      • 分布式追踪系统:sleuth+zipkin
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值