云原生
其中的代表技术:容器化、服务网格、微服务、不可变基础架构、声明式API. 基于这些技术,可以构建出容错性好、更易管理、更易观测的云服务。结合其中的自动化机制,服务可以轻松应对频繁和可预测的重大变更.
主要涉及的四个方面
弹性资源
通过虚拟化容器+灵活的编排调度机制,为云服务提供快速扩缩容能力,可以极大的提高物理资源的利用率
弹性计算资源类型
- 服务器资源调度
- 微服务:单个应用程序的许多松散耦合且可独立部署的较小服务
- 大服务:
- 计算资源调度
- 在线:热销榜单
- 离线:热销榜单更新
- 消息队列
- 在线: 削峰、解耦
- 离线:大数据分析
弹性存储资源类型
- 对象:宣传视频
- 大数据:用户消费记录
- 关系型数据库:收音记录
- 元数据:通讯录
- NoSQL:KV客户需求
DevOps
一种软件开发管理模式,结合自动化流程,提高软件构建、测试、发布效率 流程图如下:
微服务架构
- 业务功能单元解耦,使得云服务可以快速迭代
- 其中统一的通信标准(HTTP、RPC)可以使更多的组件接入云原生,同时使得各组件之间交互更容易(通信标准交给框架,而不是写在业务逻辑中)
服务网格
-
微服务之间通讯的中间层
-
高性能网络代理
-
业务代码与治理解耦
将业务逻辑与网络通信和治理解耦。业务不再需要关心异构体系统中RPC中间治理能力的不统一,也可以完成复杂的治理能力。
-
相较于RPC/HTTP框架
- 异构系统治理统一化
- 与业务进程解耦,生命周期易管理