该部分主要是给出学习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. 牛客网暑期ACM多校训练营(第二场)carpet

    传送门:carpet 题意 有一个n*m的地毯,aij表示地毯每格的元素,bij表示地毯每格的价格,要求选取一块价格最大值最小的地毯,并且这块地毯无限铺开之后,原地毯是其子矩阵. 题解 先找到这个矩阵 ...

  2. 【洛谷 p3371】模板-单源最短路径(图论)

    题目:给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 解法:spfa算法. 1 #include<cstdio> 2 #include<cstdlib> 3 #in ...

  3. Codeforces Round #650 (Div. 3) B. Even Array

    题目链接:https://codeforces.com/contest/1367/problem/B 题意 有一大小为 $n$ 的数组 $a$,问能否经过交换使所有元素与下标奇偶性相同(0 - ind ...

  4. 2019牛客暑期多校训练营(第七场)B Irreducible Polynomial

    传送门 题意: 给你一个n次n+1项式(An*X^n+A(n-1)*X^(n-1)...A*X+A0),将系数An都给你,问你这个多项式是不是一个不可约多项式,可约多项式就是类型(x+1)*(x+2) ...

  5. java——API

    API定义: 可以网上下载一个jdk_api文档用来查找一些函数. 匿名对象的创建  匿名对象做为返回值和参数实例: Random的使用:

  6. Atcoder ABC155_C中有关c++ STL map的用法

    题目:https://atcoder.jp/contests/abc155/tasks/abc155_c 这道题的题意是给我们n个string,让我们统计每个string出现的次数,并输出次数最多的一 ...

  7. 牛客练习赛70 B.拼凑 (序列自动机)

    题意:有一个模板串,有\(T\)个字符串,从字符串中找到某个子串,使得这个子串中的子序列包含模板串,求最短的子串的长度. 题解:找子序列,很容易想到序列自动机,根据序列自动机的原理,我们一定可以确保除 ...

  8. Codeforces Round #481 (Div. 3) C. Letters (模拟,二分)

    题意:有个\(n\)个公寓,每个公寓\(a_{i}\)代表着编号为\(1-a_{i}\)个房间,给你房间号,问它在第几栋公寓的第几个房间. 题解:对每个公寓的房间号记一个前缀和,二分查找属于第几个公寓 ...

  9. 梨子带你刷burp练兵场(burp Academy) - 服务端篇 - Sql注入配套漏洞讲解笔记

    目录 Sql注入 什么是Sql注入呢? Sql注入有哪些例子? 检索隐藏数据 打破应用逻辑 利用Union进行跨库查询 如何确定利用Union的注入攻击所需的列数呢? 如何确定Union的查询结果中哪 ...

  10. 大数据开发-从cogroup的实现来看join是宽依赖还是窄依赖

    前面一篇文章提到大数据开发-Spark Join原理详解,本文从源码角度来看cogroup 的join实现 1.分析下面的代码 import org.apache.spark.rdd.RDD impo ...