架构师_程序员_码农网

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1861|回复: 2

[资料] 【Dapr】(一)Dapr 介绍和安装教程

[复制链接]
发表于 2022-10-29 21:15:32 | 显示全部楼层 |阅读模式
Dapr的全称是 “Distributed Application Runtime”,即 “分布式应用运行时”。Dapr 是一个开源项目,由微软发起,目前已加入CNCF孵化器项目。

任何语言,任何框架,任何地方

QQ截图20221029200226.jpg

分布式应用程序运行时 (Dapr) 提供了简化微服务连接的 API。无论您的通信模式是服务到服务调用还是发布/订阅消息传递,Dapr 都可以帮助您编写弹性且安全的微服务。

通过让 Dapr 的 sidecar 处理服务发现、消息代理集成、加密、可观察性和机密管理等复杂挑战,您可以专注于业务逻辑并保持代码简单。
构建块 API 中的每一个都是独立的,这意味着您可以在应用程序中使用它们中的一个、部分或全部。可以使用以下构建块:

组件描述
服务到服务调用弹性服务到服务调用支持远程服务上的方法调用,包括重试,无论它们位于受支持的托管环境中的何处。
状态管理通过用于存储和查询键/值对的状态管理,可以在应用程序中轻松编写长时间运行、高可用性、有状态的服务以及无状态服务。状态存储是可插拔的,示例包括 AWS DynamoDB、Azure CosmosDB、Azure SQL Server、GCP Firebase、PostgreSQL 或 Redis 等。
发布和订阅在服务之间发布事件和订阅主题使事件驱动的架构能够简化水平可伸缩性并使其能够适应故障。Dapr 提供 at-least-once 消息传递保证、消息 TTL、消费者组和其他高级功能。
资源绑定带有触发器的资源绑定进一步建立在事件驱动的架构上,通过从任何外部源(如数据库、队列、文件系统等)接收和发送事件来实现规模和弹性。
演员有状态和无状态对象的模式,通过方法和状态封装使并发变得简单。Dapr 在其 Actor 运行时提供了许多功能,包括用于 Actor 激活/停用的并发、状态和生命周期管理,以及唤醒 Actor 的计时器和提醒。
可观察性Dapr 发出指标、日志和跟踪来调试和监控 Dapr 和用户应用程序。Dapr 支持分布式跟踪,使用 W3C Trace Context 标准和 Open Telemetry 轻松诊断和服务生产中的服务间调用,以发送到不同的监控工具。
秘密机密管理 API 与公共云和本地机密存储集成,以检索机密以在应用程序代码中使用。
配置配置 API 使您能够从配置存储中检索和订阅应用程序配置项。
分布式锁分布式锁 API 使您的应用程序能够获取任何资源的锁,该锁为其提供独占访问权限,直到该锁被应用程序释放或发生租用超时。

QQ截图20221029195750.jpg

官网:https://dapr.io/
文档:https://docs.dapr.io/
面向 .NET 开发人员的 Dapr:https://learn.microsoft.com/zh-cn/dotnet/architecture/dapr-for-net-developers/


Dapr 提供了各种 SDK 和框架,让您可以轻松地以您的首选语言开始使用 Dapr 进行开发。

为了让不同语言使用 Dapr 更加自然,它还包括特定语言的 SDK,用于:

  • C++
  • Go
  • Java
  • JavaScript
  • .NET
  • PHP
  • Python
  • Rust


Linux 安装 Dapr 分布式运行时


安装 Dapr CLI

首先,准备了一台 CentOS 7 系统的服务器,由于国内环境问题,请使用如下命令手动安装 dapr-cli:


验证安装

QQ截图20221029202726.jpg

安装 Docker 服务

系统安装 Docker 服务,略(推荐的开发环境需要Docker。虽然您可以在不依赖 Docker 的情况下初始化 Dapr,但后续一些开发都是基于 Docker 搭建。)

【实战】CentOS 7 安装 Docker 容器
https://www.itsvse.com/thread-9999-1-1.html

初始化 Dapr

使用 CLI 在本地计算机上初始化 Dapr。

Dapr 与您的应用程序一起作为 sidecar 运行。在自托管模式下,这意味着它是本地计算机上的一个进程。通过初始化 Dapr,您:

  • 在本地获取并安装 Dapr sidecar 二进制文件。
  • 使用 Dapr 创建简化应用程序开发的开发环境。


Dapr 初始化包括:

  • 运行Redis 容器实例以用作本地状态存储和消息代理。
  • 运行Zipkin 容器实例以实现可观察性。
  • 使用上述组件定义创建默认组件文件夹。
  • 运行Dapr 放置服务容器实例以获得本地参与者支持。



默认情况下,Dapr 初始化会下载二进制文件并从网络中提取图像以设置开发环境。但是,Dapr 还支持使用预下载的工件进行离线安装,由于国内环境问题,初始化需要离线安装,下载 daprbundle_linux_amd64.tar.gz 文件,放在 /root 目录下面

下载地址:https://github.com/dapr/installer-bundle/releases/download/v1.9.0%2B1/daprbundle_linux_amd64.tar.gz


命令如下:


验证 Dapr 版本

QQ截图20221029205547.jpg
CLI 还会创建一个默认组件文件夹,其中包含多个 YAML 文件,其中包含状态存储、Pub/sub 和 Zipkin 的定义。Dapr sidecar 将读取这些组件并使用:

命令如下:


安装 Dapr Dashboard

Dapr Dashboard 提供有关 Dapr 应用程序、组件、配置和控制平面服务的信息。用户可以在 Kubernetes 和自托管平台上查看元数据、清单和部署文件、参与者、日志等。

命令如下:


后台运行:

QQ截图20221029211405.jpg

(完)





上一篇:Windows 使用 PowerShell 获取记事本最后 10 行
下一篇:The configured user limit (128) on the number of inotify instances has ...
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2022-10-31 19:58:43 | 显示全部楼层
Windows 下面安装 Dapr

下载 msi 安装包:https://github.com/dapr/cli/releases/download/v1.9.1/dapr.msi,默认安装位置:C:\dapr

Dapr 也可以在没有 Docker 的情况下运行Slim 自托管模式,命令如下:


在 Windows 上初始化完成后,组件目录地址: %UserProfile%\.dapr


码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
 楼主| 发表于 2023-1-1 14:28:57 | 显示全部楼层
Dapr 中国社区
https://cn.dapr.io/
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:help@itsvse.com

QQ|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2024-3-29 22:06

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表