1. 1.1 架构historical

    1. 什么是架构 在抽象层次上描述整体与局部以及他们之间的关系 2. 为什么需要架构 为了解决软件系统复杂度带来的问题 3. 架构分类 - 3.1. 基础架构 - 例如云平台、操作系统、网络、存储、数据库和编译器等 3.2. 中间件与大数据平台 - 中间件架构:例如分布式服务中间件、消息中间件、数据

  2. 1.2 架构模式historical

    1. 单体架构 单体架构.md 2. 分层架构 分层架构.md 3. 事件驱动架构 事件驱动架构.md 4. CQRS架构 读写分离架构.md 5. 微服务架构 微服务.md 6. 可插拔架构 可插拔架构.md 7. 参考 - 架构模式 \- 维基百科,自由的百科全书

  3. 1.3 单体架构historical

    1. 什么是单体架构 - 将所有功能打包在一个容器中运行的设计风格,一个实例中集成了一个系统的所有功能。通过负载均衡软件/设备实现多实例调用 - 2. 单体架构的优缺点 - 优点 - 开发简单 - 部署简单 - 测试简单 - 缺点 - 业务耦合度高导致修改复杂 - 扩展性差

  4. 1.4 分层架构historical

    1. 什么是分层架构 根据系统中的角色/职责拆分和组织代码单元的常规实践 上层依赖下层,上层可以感知到下层,下层感知不到上层 2. 分层架构的演进 2.1. 一层 2.2. 两层 也叫单机架构 2.3. 三层 也叫集中式架构,C/S和B/S架构 2.4. DDD四层 2.4.1. 传统四层架构 用户

  5. 1.5 读写分离架构historical

    1. 什么是读写分离 把读操作(R)和写操作(CUD)分开,本质上就是分布式系统复制中的Leader-Follower模式 2. 为什么需要读写分离 提高读吞吐量 3. 读写分离适用场景 读多写少且允许数据不一致 4. 如何设计读写分离 4.1. 服务层读写分离 优点:代码易维护且没有数据一致性问题

  6. 1.6 事件驱动架构historical

    1. 什么是事件驱动架构 基于事件的一种软件架构模式 系统从A状态- B状态发布消息告知系统的其他部分 2. 为什么需要事件驱动架构 解耦:事件发起者并不知道哪个事件使用者在监听事件,而且事件也不知道其所产生的后续结果 异步 3. 事件驱动架构 对比请求驱动模式实时性差 4. 如何设计事件驱动架构

  7. 1.7 DDDhistorical

    1. 什么是DDD 领域驱动设计,是一种架构方法 1.1. 领域 1.1.1. 什么是领域 领域就是业务的范围/边界,大领域可以划分成多个中领域,中领域又可以继续划分成小领域... 本质就和解决问题一样,采用分而治之的思想把复杂问题简单化,从而降低业务理解和系统实现的复杂度 1.1.2. 为什么需要

  8. 1.8 微服务historical

    1. 什么是微服务架构 - 微服务架构是把单体应用 按功能模块拆分成一组服务 的架构 - 模块即服务,服务之间通过API通信 - 每个服务有自己独立的数据库 1.1. 微服务 vs SOA - 微服务架构是目前主流的构造分布式系统一种架构风格。它可以看做是SOA架构的一种变种或者是延伸 - 所谓分布

  9. 2.1 OpenId Connecthistorical

    1. OpenID Connect是什么 - 一种认证协议 - OAuth只是用于授权,没有定义认证的规范 - 基于OAuth2 - 只是多了个标准化的UserInfo Endpoint 2. OpenID Connect流程 - 跟OAuth.md一样。 - 区别在于 - 再在OAuth第一步请求

  10. 2.2 JWThistorical

    1. JWT是什么 - 用户认证成功后,服务器给用户发放的一种token - token是一定时间内有效的令牌,表明用户已经认证 2. 为什么需要JWT - 用于跨域认证 - 所谓跨域认证:指如果一个公司有两个域名A和B,那么用户在A域名认证后,访问B域名不用再次认证了 - 传统的跨域认证是cook