Dapr 云和边缘计算的微服务构件开源项目

我要开发同款
匿名用户2019年10月28日
104阅读
所属分类Google Go、程序开发、微服务框架
授权协议MIT

作品详情

Dapr(DistributedApplicationRuntime,分布式应用运行时)是微软新推出的,一种可移植的、serverless的、事件驱动的运行时,它使开发人员可以轻松构建弹性,无状态和有状态微服务,这些服务运行在云和边缘上,并包含多种语言和开发框架。

Dapr整理了构建微服务应用为开放,独立的构建块的最佳实践,使用户能够使用自己选择的语言和框架来构建可移植的应用程序。每个构建块都是独立的,用户可以在应用中使用其中的一个或多个。

注意:Dapr目前正处于Alpha阶段的社区开发中。在1.0稳定版本之前,不建议将Dapr用于生产工作负载。

Dapr的功能和定位概括图:

最底下基础设施是各种云平台(主流公有云都支持)或者边缘环境其上是dapr提供的分布式能力,dapr称之为“buildingblock”。这些buildingblock的能力,以统一的API(支持HTTP和gRPC)对外提供服务应用可以用各种语言编写,然后通过dapr提供的API使用这些能力,dapr也提供客户端类库来简化对API的调用,实现了多语言的支持。

Dapr提供的具体分布式能力(buildingblock)如下图所示:

具体内容可查看Dapr官方文档:https://github.com/dapr/docs/tree/master/concepts

目标

使开发人员可以使用任何语言或框架来编写分布式应用程序通过提供最佳实践构建块来解决开发人员构建微服务应用程序时遇到的难题社区驱动,开放并与供应商无关获得新的贡献者通过开放的API提供一致性和可移植性跨云和边缘与平台无关拥抱可扩展性并提供可插入组件,而无需供应商锁定通过高性能和轻量级实现物联网和边缘场景可以从现有代码中逐步采用,而没有运行时依赖

特征

具有可插入提供程序和至少一次语义的事件驱动的Pub-Sub系统使用可插入提供程序的输入和输出绑定具有可插拔数据存储的状态管理一致的服务到服务发现和调用选择加入状态模型:强大/最终一致性,首次写入/最后写入获胜跨平台虚拟演员机密管理可从安全密钥库中检索机密限速内置可观察性支持使用专用的Operator和CRD在Kubernetes上本地运行通过HTTP和gRPC支持所有编程语言来自Azure、AWS、GCP的Multi-Cloud、开放式组件(绑定,发布-订阅,状态)作为过程或容器化在任何地方运行轻量级(58MB二进制,4MB物理内存)作为辅助工具运行-无需特殊的SDK或库专用的CLI-易于调试的开发人员友好体验Java、.NETCore、Go、Javascript、Python、Rust和C++的客户端
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论