云原生架构概述
云原生(Cloud Native)是一种利用云计算优势构建和运行应用的方法论。
云原生五大核心要素
Section titled “云原生五大核心要素”1. 微服务架构
Section titled “1. 微服务架构”将单体应用拆分为多个独立的、可独立部署的小服务:
- 每个服务专注于单一业务功能
- 服务间通过 API 通信
- 独立开发、部署和扩展
2. 容器化
Section titled “2. 容器化”使用容器(如 Docker)打包应用及其依赖:
- 环境一致性:开发与生产环境完全一致
- 轻量级:比虚拟机更高效
- 快速启动:秒级启动时间
3. 编排与管理
Section titled “3. 编排与管理”通过 Kubernetes 等平台自动化容器的部署、伸缩和运维。
4. 声明式 API
Section titled “4. 声明式 API”通过声明期望状态,由系统自动达成:
apiVersion: apps/v1kind: Deploymentmetadata: name: web-appspec: replicas: 3 selector: matchLabels: app: web5. 不可变基础设施
Section titled “5. 不可变基础设施”基础设施一经创建就不再修改,每次变更通过替换实现。
十二要素应用
Section titled “十二要素应用”云原生应用遵循十二要素方法论:
- 基准代码、依赖、配置、后端服务等
- 适用于任何语言和后端服务