Dapr全称
Distributed Application Runtime,分布式应用运行时
Dapr的口号
简化云原生应用开发,聚焦在应用的核心逻辑,让代码简单、可移植
Dapr的目标
- 最佳实践的构建块
- 任何语言或框架
- 一致性,可移植,开放的API
- 采纳标准
- 可扩展和可插拔的组件
- 与平台无关(本地,云计算,边缘计算等)
- 社区驱动,供应商(厂商)中立
Dapr的设计思路
这里首先要先理解几个问题,然后再看Dapr如何解决这些问题的
以下资料都有英文原图,中文翻译为个人理解,英文好的小伙伴可以直接看原图。
微服务为什么很难
- 开发者要构建自己的运行时处理分布式应用问题
- 运行时支持的开发语言有限,且有严格控制的特性(功能)集合
- 运行时的可移植性有限,一般只支持特定的基础架构平台
分布式应用的需求
内容引自 Multi-Runtime Microservices Architecture https://www.infoq.com/articles/multi-runtime-microservice-architecture/
注意:二级内容不与图片对应,把功能组合成场景
- 生命周期
- 更快的发布周期
- 自动化部署
- 从错误中恢复
- 自动化伸缩