第一篇:微服务的意义
1、常见架构对比
第二篇:微服务的构建
1、微服务建模关注点及方法论
1.1、服务分类
1.2、服务模型
1.3、服务边界
1.4、服务数据
2、服务拆分和集成
2.1、服务拆分及方法论
2.1.1、服务拆分的维度、策略、依赖关系、数据及边界
2.1.2、服务拆分的方法论
领域驱动设计(Domain Driven Design,DDD)
2.2、服务拆分的集成
2.2.1、接口集成
常用rpc、rest、消息传递和服务总线;
2.2.2、数据集成
横向还是纵向?共享数据库、数据复制还是分库分表?;
2.2.3、客户端集成
客户端直接集成接口或者通过网关层统一访问;
2.2.4、外部集成
沿着服务化思想及saas(software as a service,软件即服务)理念,可通过服务回调的方式集成;
第三篇:微服务实现
1、服务的通信
1.1、网关
1.2、消息传递(MQ)
1.3、远程过程调用(RPC)
2、服务的治理
2.1、服务注册与发现
2.2、服务配置
2.3、服务限流、熔断和降级
2.4、负载均衡
2.5、服务的路由
2.6、服务的幂等性
2.7、服务的监控和链路追踪
2.8、服务的压测方式及指标
2.9、服务的安全
3.0、服务的交付和部署
3、服务的数据一致性
3.1、强一致性
强一致性事务或锁来保证
3.2、弱一致性
一般关注弱一致性的特殊情况,最终一致性,保证最终一致性的方案有:
3.2.1、弱一致性事务
3.2.2、事务消息
4、服务的可靠性
4.1、服务访问失败的原因及对策
4.2、服务容错
服务调用容错和集群容错;
4.3、服务隔离
4.4、服务限流
4.5、服务降级
5、服务架构实现
5.1、技术选型方法论
5.2、spring cloud alibaba解决方案
5.2.1、流控和服务降级-Sentinel
5.2.2、注册中心-nacos
5.2.3、配置中心-nacos
5.2.4、事件驱动-rocketMq
5.2.5、消息总线-rocketMq
5.2.6、分布式事务-seata
5.2.7、远程过程调用-dubbo
5.2.8、工作流引擎-compileflow
第四篇:服务转型
1、向微服务转型时机
适合的时机:没有服务化、横向拓展困难、应用间数据复制、基础组件薄弱、大量开发人员修改各自小版本集中到大版本上线、模块独立服务保障核心可用
2、服务转型过程转变和实践
2.1、服务架构与研发过程转变
2.1.1、产品管理转变
2.1.2、组织架构转变
康威定律:设计系统的架构受制于产生这些设计的组织的沟通结构。
说明组织和系统架构之间有关联,具体体现为如果组织和文化架构不支持,则无法构建一个高效的系统架构,另一方面,系统设计或架构不支持,无法构建一个高效的组织。
结论:要实施微服务架构必然要求进行组织和文化架构调整。
团队组织结构:
按照职能:职能型和跨职能型;
按照职权:依据项目经理的职权大小分为强、弱、平衡矩阵;
职能型结构:直线职能型、 事业部型、矩阵型、流程型;
从垂直型逐渐从水平型转变,到了矩阵型组织结构时就是一种具有垂直管理与水平管理的双重管理模式。流程型组织结构即从矩阵型演变而来,企业采取的是一种完全水平式的管理模式。流程型组织结构使企业形态发生了改变,形如八边形。客户价值形态的企业多采取流程型组织结构。
2.1.3、研发文化转变
IPD流程管理
2.2、微服务最佳实践
2.2.1、服务定义标准化
2.2.2、无状态服务
2.2.3、服务幂等性
2.2.4、数据最终一致性
2.2.5、版本和管理迁移
3、服务转型案例分析
3.1、四个阶段
3.1.1、业务建模
3.1.2、技术导入
3.1.3、过程转变
3.1.4、持续交付