该部分主要是给出学习dapr的入门,描述dapr全貌告诉你dapr是啥以及介绍dapr的主要功能与组件

该部分分为两章:

第一章:介绍dapr

第二章:调试dapr的解决方案项目

1. 介绍dapr

该章节将会为你介绍分布式应用运行时Distributed Application Runtime (Dapr)项目,可以让你学到dapr架构的核心概念,也为你开发dapr提供准备。

dapr能够助力搭建云原生应用的开发,以及简化使用微服务架构的难度。

在该章节,我们将会阐述一下几个主题:

1)dapr的概述

2)dapr的架构

3)dapr的入门

4)搭建一个dapr样例

在这个阶段,学习这些主题是非常重要的,它可以为我们学习dapr打下坚实的基础,也为去理解微服务架构提供便捷,通过本书剩下的章节,可以指导我们学习dapr。

首先,开启探索dapr的第一步就是理解它是如何工作的。

1. 专业准备

在github上找到源码:https://github.com/
PacktPublishing/Practical-Microservices-with-Dapr-and-.NET/
tree/main/chapter01

在这个章节,找到需要运行的脚本与代码路径<repositorypath>\chapter01

2.dapr的整体概述

Dapr是有微软公司研发并开源的基于事件驱动、易扩展的运行时。目前正在开发阶段,已经发布1.0版本,现在可以商用了

在dapr的定义中着重强调了事件驱动这个概念,这说明事件驱动在以微服务架构的应用中起到重要作用,从外部系统或者本系统的其他部分,都是以事件的形式将通知其他服务以便执行后续的业务逻辑。

dapr的扩展性主要表现在它可以在你的开发机上以self-hosted方式启动,也可以部署在系统边缘(边缘计算?)或者部署在kubernets上

如下图可以展示出dapr架构中的多种构建模块:

可移植性是超出了现有的托管环境,这是微软在dapr上的一项创举,dapr可以在本地或者云上,比如 Microsoft

Azure, Amazon AWS, Google GCP 或者其他云服务商。

Dapr是部署在由微软研发具有超大规模开发建设经验的云原生应用,它的灵感来自Orleans和Service Fabric的设计,这使许多Microsoft Azure云服务可以在以下位置弹性运行规模大。

Dapr为开发者提供了基于微服务架构风格的一种设计方法,一种构建工具,一个应用的运行时。

微服务可以为复杂度增长的团队与产品管理提供很多有效的帮助,但是通常在开始阶段,也会给团队带来比较大的负担。

如果您可以利用诸如Dapr之类的运行时来帮助您解决常见问题,该怎么办?
您可能需要采用和简化操作的模式?

如下图,展示的是两种dapr的启动方式:

dapr学习:dapr介绍的更多相关文章

  1. C# BackgroundWorker组件学习入门介绍

    C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...

  2. Android Testing学习01 介绍 测试测什么 测试的类型

    Android Testing学习01 介绍 测试测什么 测试的类型 Android 测试 测什么 1.Activity的生命周期事件 应该测试Activity的生命周期事件处理. 如果你的Activ ...

  3. Redis学习01——介绍与搭建环境

    Redis学习01介绍与搭建环境一简介二yum配置已经配置了的可以跳过三安装gcc四安装redis1 上传Redis到linux中2 解压到usrlocal下3 编译redis4 安装redis5 拷 ...

  4. 深度学习与CV教程(8) | 常见深度学习框架介绍

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...

  5. Dapr学习(2)之Rancher2.63(k8s&k3s)环境安装Dapr

    前言:前面写过一篇关于dapr入门安装的文章,self-host模式,使用docker安装的本地调试环境,并进行了测试:本篇介绍k8s方式安装dapr,此文主要基于的环境是k3s,通过rancher2 ...

  6. Dapr学习(4)之eShopOnDapr部署(Rancher2.63&k3s)

    本篇主要讲述一下github上基于Dapr实现的商城demo在(K8s or K3s)环境中的部署实践,本文环境基于k3s&rancher2.6.3 1.eShopOnDapr源代码及概述 源 ...

  7. Caffe 深度学习框架介绍

    转自:http://suanfazu.com/t/caffe/281 Caffe是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的贾扬清,目前在Google工作. Caffe是 ...

  8. Ext学习-布局介绍

    1.目标    了解ExtJS中的关于布局和组建的相关原理,并学习相关的布局方式 2.内容   1.布局和组件的相关原理   2.常见的布局方式 3.学习流程    1.首先应该学习一下布局和组件的相 ...

  9. Hibernate学习---基本介绍+作用+配置

    从今天开始重新学习(以前学的太匆忙)Hibernate,这篇文章主要就一下几点进行讲解和说明: Hibernate的基本介绍 Hibernate的作用 Hibernate基本配置 Hibernate的 ...

随机推荐

  1. c语言实现--顺序表操作

    经过三天的时间终于把顺序表的操作实现搞定了.(主要是在测试部分停留了太长时间) 1;线性表顺序存储的概念:指的是在内存中用一段地址连续的存储单元依次存储线性表中的元素. 2;采用的实现方式:一段地址连 ...

  2. Codeforces Round #654 (Div. 2) B. Magical Calendar (结论)

    题意:你需要在长度从\(1\)~\(k\),宽度无限的网格图中造图形(每个点四周必须连通),问最多能造出多少种不同的图形. 题解:感觉没什么好说的,就是画图找规律,如果\(r\ge n\)的话(即没有 ...

  3. 使用docker时报错“net/http: TLS handshake timeout”

    问题原因 :该命令默认从docker远端镜像仓库中拉取镜像,但由于远端仓库的服务器是在国外,我们国内有的用户很可能都访问不到 解决:使用国内镜像仓库 docker pull registry.dock ...

  4. Linux命令:sysctl

    sysctl命令用于运行时配置或查看内核参数,这些参数位于/proc/sys目录下.可以使用sysctl命令来设置或重新设置网络联网功能,如:IP转发.IP碎片去除以及源路由检查等.用户可以编辑/et ...

  5. codefforces 877B

    B. Nikita and stringtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inpu ...

  6. codefoeces 864B

    B. Polycarp and Letters time limit per test 2 seconds memory limit per test 256 megabytes input stan ...

  7. node.js cli downloader

    node.js cli downloader cli 下载器 refs https://github.com/xgqfrms/react-storybook-app xgqfrms 2012-2020 ...

  8. JavaScript Number Type Checker

    JavaScript Number Type Checker Number.isInteger // static 方法 Number.isInteger(value) https://develop ...

  9. React Native & Android & Text Input

    React Native & Android & Text Input react native clear input value https://stackoverflow.com ...

  10. Open API collection

    Open API collection online API https://developer.github.com/v3/ https://developer.github.com/v4 http ...