写点什么

Dapr 可视化指南

  • 2021-03-05
  • 本文字数:1652 字

    阅读完需:约 5 分钟

Dapr可视化指南

译者注:原文来自 Dapr 官方博客 A visual guide to Dapr,文章内容比较浅显易懂,适合简单阅读以对 Dapr 有个初步了解。最大的亮点是那张 Dapr 的概述大图,很好,很萌,作者 Nitya Narasimhan 是个很会画图的大眼萌妹子。


作为微软开发者关系部 Cloud Advocacy 团队的一员,我有一个独特的福利,那就是可以从那些在使用和开发方面拥有实际专业知识的人那里听到很多不同的技术和解决方案。因此,当我听到我的开源宣传团队的同事们在和 "云原生 "和 "微服务" 一起使用 Dapr 这个名字时,我很感兴趣。


然后,我很高兴地发现 Dapr 代表 "Distributed Application Runtime/分布式应用运行时",并在本月早些时候 刚刚达到生产就绪的 v1.0 状态。我想知道关于它的一切。值得庆幸的是,Dapr 有大量的文档来帮助我们入门。所以,当我想学习新的东西时,我做了我经常做的事情——我把学到的东西浓缩成一张大图,一张草图。现在,我想和你分享我的初步学习成果!

大图

我之前曾说过。和 65% 的视觉学习者用户一样,我发现,在我深入了解细节之前,将关键信息记录在一张纸上可以有助于把握大局。不仅能让我更好地了解该技术的各个方面,而且还能将其与其他可能与上下文相关的想法或概念 "联系起来"。所以,让我先分享一下 sketchnote(见下图)。你可以在 云技能:Sketchnotes网站 下载一个更高分辨率的版本,并查看 Visual Azure 博客,以了解其他云计算技术的可视化指南。


主要收获

上面的概述图片涵盖了很多领域,但以下是我总结的要点。

什么是 Dapr?

Dapr 是 Distributed Application Runtime 的缩写。它是一个可移植的、事件驱动的运行时,使应用开发者可以轻松构建弹性的无状态和有状态应用,而这些应用可以运行在云和边缘环境上。更重要的是,Dapr 支持多种编程语言和开发者框架,为我们提供了一个快速体验和使用的起点。你可以在 Dapr 概述文档 中获得更多细节。

为什么使用 Dapr?

许多应用开发者都有传统的 3 层(客户端-服务器-数据库)架构的经验。然而,云原生系统依赖于松耦合的系统和微服务架构,旨在拥抱大规模、快速变更和弹性运维。现在,开发人员面临着一系列的全新挑战,如发现(和调用)微服务、管理密钥以及故障后恢复状态。


Dapr 提炼了最佳实践,将微服务构建成独立、开放的"构建块",然后暴露 API 以便于集成和清洗的分离关注点。开发者只需使用这些块中所需的子集,逐步构建,就能很快让他们的应用启动并运行。

Dapr 如何工作?

Dapr 以 sidecar 架构 的形式暴露其 API 。实际上,Dapr 可以在自己的容器或进程中与主应用程序一起运行。您的应用程序不需要将 Dapr 集成到其核心中,而是可以通过 HTTP 或 gRPC 调用构建块 API。这清晰的分离了应用程序逻辑与微服务支持服务,更容易扩展您的解决方案 —— 从自托管(开发)到云托管(虚拟机或 Kubernetes)和边缘部署。


虽然您可以简单地使用手动制作的 HTTP 或 gRPC 调用来访问这些 API,但您也有一套丰富的 特定语言 SDK,为你提供语言优化的类型化 API,更容易集成和测试。目前支持的语言 SDK 包括 C++、Go、Java、JavaScript、Python、PHP、Rust 和 .NET! 请注意,Dapr 本身是语言无关的,它提供了一个默认的 RESTful HTTP API,如果你喜欢的语言 SDK 还不支持,你可以直接调用。

我还应该知道什么?

只有三件事:


  • Dapr v1.0 已经做好了生产准备! Dapr 有几个早期采用者,v1.0 版本更加注重性能、安全、高可用性和一致性等方面。请 在此阅读该版本的亮点

  • Dapr 是开源的,您可以在 Github上找到核心运行时代码、文档、快速开始等,并 欢迎社区贡献。Dapr Discord 服务器 和定期的 社区会议 是与社区互动的好方法!

  • Dapr 生态系统正在成长! 有 70 多个 组件 是由社区贡献的,所以 Dapr 可以帮助您的应用程序与广泛的技术集成,也使它在多云和混合云场景下有非常好的可移植性。


入门最简单的方法是通过这个 入门教程 设置您的本地开发环境(自托管模式),并探索提供的 quickstart,用代码学习核心概念!不要忘了关注 @daprdev 的 Twitter,以获得更新的消息。不要忘记在 Twitter 上关注@daprdev,以获得更新和新闻的通知。

2021-03-05 15:065735

评论

发布
暂无评论
发现更多内容

[翻译]Defer,Panic,and Recover

卓丁

defer panic recover Go 语言

云原生 go-zero 微服务框架

万俊峰Kevin

微服务 microservice go-zero Go 语言

oeasy教您玩转linux010206toilet

o

为什么Java二维数组不用指定列的长度

Rayjun

Java 数组

2020-09-03-第十三周作业

路易斯李李李

为稳外贸保驾护航 区块链交易平台显身手

CECBC

区块链 银行 福费廷

如何将VSCode变成绿色版本

lmymirror

vscode 教程

Python 函数为什么会默认返回 None?

Python猫

Python 编程

一个在交流群里讨论过两轮的问题,答案竟然跟一个 PEP 有关

Python猫

Python 编程

Python 为什么要在 18 年前引入布尔类型?且与 C、C++ 和 Java 都不同?

Python猫

Python 编程

区块链技术应用于链接智慧医疗

CECBC

区块链 社会保险 智能医疗

SpringBoot 缓存之常用注解

hepingfly

Java 缓存 springboot 注解

Flink从保存点启动应用-18

小知识点

scala 大数据 flink

人生革命由自律发起

胡迪伦

自学编程 拖延症 懒惰 死循环

宁波新基建之路 基于制造优势破题智慧发展

CECBC

新基建

JavaScript 深拷贝与浅拷贝

梁凤波

首个数字银行卡明年发行,广州出台区块链措施支持大湾区

CECBC

区块链 金融科技 社会

持续集成有什么好处?快来看鸭

清菡软件测试

jenkins

商业通识 : 商业到底是什么?

Walker

学习 得到 个人成长 商业

区块链技术破解数字版权保护难题

CECBC

区块链 版权保护 数字技术

妈妈,今天您几点下班?

脑极体

职场求生攻略答疑篇之 3 —— 数据是土地

臧萌

数据 职场成长

智能商业时代的思考(一)从在线化到网络化

刘旭东

拼多多 淘宝 智能商业 网络协同

Elasticsearch之mapping

北漂码农有话说

Google鼓励的13条代码审查标准 [建议收藏]

简爱W

【MySQL】我这样分析MySQL中的事务,面试官对我刮目相看!!

冰河

MySQL 面试 事务 隔离级别 冰河

java安全编码指南之:声明和初始化

程序那些事

安全编码 java安全编码 编码指南 对象初始化

拥抱K8S系列-04-基于docker部署更多应用

张无忌

Docker 标准化 vsftpd

Python 为什么能支持任意的真值判断?

Python猫

Python 编程

怎么向女朋友解释什么叫区块链?

艾小仙

比特币 区块链 以太坊 defi

2020-09-03-第十三周学习总结

路易斯李李李

Dapr可视化指南_开源_Nitya Narasimhan_InfoQ精选文章