分布式应用运行时 Dapr 1.7 发布
Dapr 是一个开源、可移植的、事件驱动的运行时,可以帮助开发人员构建在云和边缘上运行的弹性的、微服务的、无状态和有状态应用程序,并且关注于业务逻辑而不用考虑分布式相关的问题。 分布式相关的问题交给Dapr来解决。
2022年4月8日正式发布了1.7 鬓斑白, 这是这是自Dapr v1.0 发布以来的第七次小版本更新,Dapr 1.7.0 版本的贡献者数量最多。我们要感谢所有 83 位新的和现有的贡献者,他们帮助实现了这个版本。 这次更新的内容很多都是大家期盼的功能,例如支持离线部署、更多的成熟Stable组件等,接下来我们一起来看看更新的内容。
1、跨 Dapr API 配置重试、超时和断路器 ,这部分我也写了一篇文章: Dapr 弹性的策略,Dapr 1.7.0 实现了第一阶段目标。分布式应用程序通常由许多服务组成,任何给定应用程序都有数十个甚至数百个实例。这些应用程序并非孤立存在,而是多次依赖于数据库、缓存、发布/订阅、秘密存储和其他基础设施服务。随着更多的依赖关系,系统故障的可能性增加。例如,由于硬件故障、数据库运行缓慢、请求数量过多、应用程序重新启动/横向扩展或其他几个原因,实例可能会失败或无响应。设计和实施具有容错能力(检测、缓解和响应故障的能力)的应用程序可以使您的应用程序恢复到正常运行状态并自我修复,还有助于防止级联故障一直到您的基础设施服务。
Dapr 提供了通过弹性规范定义和应用容错弹性策略的能力。弹性规范保存在与组件规范相同的位置,并在 Dapr sidecar 启动时应用。Sidecar确定如何将弹性策略应用于您的 Dapr API 调用。在弹性规范中,您可以为流行的弹性模式定义策略,例如:
然后可以将策略一致地应用于目标,其中包括:
2、在可观测性方面进一步加强,为了提高操作的可见性,组件中添加了新的指标,包括发布/订阅、绑定、状态存储等。例如:
- 使用组件时的延迟。
- 调用给定组件的次数。
Dapr 运行时将事件记录到标准输出以便于诊断;例如,列出启动时加载的组件的其他运行时信息。使用此版本,您现在可以:
- 打开应用程序和 Dapr sidecar 之间API 调用的日志记录。
- 在输出日志中查看这些调用。
3、组件改进,在之前的 Dapr 版本中具有稳定候选版本的以下组件已升级为稳定版本,特别是MQTT 发布订阅组件的进入稳定状态,对于在边缘计算的采用提供了一个非常好的支持:
在这个版本中添加了3个状态组件,一共有23个状态组件了,华为云也开始提交了一个新的状态组件,1.8 版本会成为新增的状态组件。
在现有组件中加入了新的功能:
influxdb绑定现在支持查询。在这个版本中,现在共有 97 个组件,包括 41 个绑定、1 个配置、8 个 HTTP 中间件、3 个名称解析、13 个 pub/sub、8 个秘密存储和 23 个状态存储。
4、功能从预览版移至稳定版
在至少两个版本可用并征求反馈和修复后,一些功能从预览状态转移到稳定状态。此版本中的以下功能现已稳定:
5、CLI 更新
Kubernetes 命名空间支持
CLI 的命令 components, configurations, 和 list 在返回的输出结果中支持Kubernetes的命名空间
简化新根证书和应用程序证书的更新:
- 引入了dapr mtls renew-certificate命令,可以更轻松地解决集群中的根证书到期和续订问题。
-k如果根证书到期时间不足 30 天,任何使用 Kubernetes 选项的 CLI 命令现在都会引发警告消息。
6、在自托管模式下安装 Dapr 的新方法
私有和备用映像注册表(预览)
在自托管模式下,CLI init命令现在可以:
- 指定任何私有注册表以提取安装 Dapr 所需的容器Image。
- 提供选择公共 Docker hub 或 Github 存储库的能力。这使您能够:
- 将Image放置在您选择的受信任存储库中。
- 在Image 限制的情况下从不同的公共资源中提取。
离线安装(预览版)
默认情况下,Dapr 会下载二进制文件并从网络中提取Image 以设置开发环境。在此版本中,Dapr 现在支持使用预下载的制品进行离线 安装,无论是使用 Docker 还是silm环境。每个 Dapr 版本的制品现在都内置在Dapr Installer Bundle中,可以从 repo :https://github.com/dapr/installer-bundle 下载。通过将此安装程序包与 Dapr CLI init命令一起使用,从而实现离线安装。
7、性能改进
Unix 域套接字现在在 Kubernetes 上可用,现在,您可以在使用注释 dapr.io/unix-domain-socket-path 调用 Dapr sidecar 时将 Unix Domain Sockets 与 Kubernetes(以及自托管)一起使用,以提高吞吐量并降低延迟。
如果您不熟悉 Dapr,请访问入门页面并熟悉 Dapr。 文档已更新,包含此版本的所有新功能和更改。通过概念和开发应用程序文档开始使用此版本中引入的新功能。要将 Dapr 升级到 1.7.0 版,请跳至本节。
更多详情,参见 https://github.com/dapr/dapr/releases/tag/v1.7.0
分布式应用运行时 Dapr 1.7 发布的更多相关文章
- Dapr 知多少 | 分布式应用运行时
Intro Dapr 官方团队已于最近(2021.1.17)正式发布Dapr v1.0,Dapr已正式生产可用,可以部署到自托管环境或 Kubernetes 集群.对于绝大多数开发者来说,想必对Dap ...
- 乘风破浪,.Net Core遇见Dapr,为云原生而生的分布式应用运行时
Dapr是一个由微软主导的云原生开源项目,国内云计算巨头阿里云也积极参与其中,2019年10月首次发布,到今年2月正式发布V1.0版本.在不到一年半的时间内,github star数达到了1.2万,超 ...
- 本地使用 Docker Compose 与 Nestjs 快速构建基于 Dapr 的 Redis 发布/订阅分布式应用
Dapr(分布式应用程序运行时)介绍 Dapr 是一个可移植的.事件驱动的运行时,它使任何开发人员能够轻松构建出弹性的.无状态和有状态的应用程序,并可运行在云平台或边缘计算中,它同时也支持多种编程语言 ...
- vs发布的程序不依赖运行时库msvcp100.dll
[摘要:msvcr100.dll:MS Visual C Runtime 100 msvcp100.dll:MS Visual CPp 100 vs建立的工程,运转时库的范例有MD(MDd)战MT ...
- xmake v2.6.1 发布,使用 Lua5.4 运行时,Rust 和 C++ 混合编译支持
xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能 ...
- 《转》.NET开源核心运行时,且行且珍惜
转载自infoQ 背景 InfoQ中文站此前报道过,2014年11月12日,ASP.NET之父.微软云计算与企业级产品工程部执行副总裁Scott Guthrie,在Connect全球开发者在线会议上宣 ...
- dt.jar设计时rt.jar运行时
很多人在初学Java的时候,都要配置环境变量.在配置CLASSPATH的时候,都会加上一个当前目录.,还有两个jar:dt.jar和tools.jar.其实好多人都不了解这两个jar的作用,尤其是dt ...
- 大型Web应用运行时 PHP负载均衡指南
如今,“大型服务器”模式的时代已经过去,我们在运行一些大的Web应用时候,可以使用各种各样的负载均衡技术,这是一种更可行的方法,将使硬件成本降至最低. 过去当运行一个大的web应用时候意味着需要运行一 ...
- Kubernetes(k8s)容器运行时(CRI)
Kubernetes节点的底层由一个叫做"容器运行时"的软件进行支撑,它负责比如启停容器这样的事情.最广为人知的容器运行时当属Docker,但它不是唯一的.事实上,容器运行时这个领 ...
随机推荐
- mysql学习笔记-底层原理详解
前言 我相信每一个程序员都避免不了和数据库打交道,其中Mysql以其轻量.开源成为当下最流行的关系型数据库.Mysql5.0以前以MyISAM作为默认存储引擎,在5.5版本以后,以InnoDB作为默认 ...
- futter环境安装
镜像下载.域名解析.时间同步请点击 阿里巴巴开源镜像站 Flutter是谷歌开发的一款开源.免费的基于Dart语言的UI框架,可以快速在IOS和Android上构建高质量的原生应用.它的最大的特点是跨 ...
- kubernetes证书过期处理
rancher中文文档:http://docs.rancher.cn/ k8s中文文档:https://kubernetes.io/zh/docs 一.修改kubeadm 源码 增加证书到100年 $ ...
- docker基础命令,常用操作
docker基础命令 使用docker镜像 获取镜像 从docker registry获取镜像的命令是docker pull.命令格式是: docker pull [选项][docker regist ...
- 突发!Gitee 图床,废了!
大家好,我是鱼皮,这两天又发生了一件挺意外的事情:Gitee 的图床废了! 图床:指储存图片的服务器,便于在网上展示图片 昨天晚上,星球里不止一位小伙伴发帖子表示自己网站.文章中的图片竟然全部变成了 ...
- 如何巧妙使用vim处理文件
一系列流程书写如何用vim巧妙处理文件 1. 创建两个待处理的文件 root@ubuntu:/home/watson/real-watson# touch left right 2. 简单增补文件内容 ...
- zookeeper从小白到精通
目录 1.介绍 1.1概念 1.2特点 1.3主要的集群步骤 1.4数据结构 1.5应用场景 2.本地安装 2.1安装jdk 2.2下载安装 2.3配置文件修改 2.4启动服务端 2.5启动客户端 2 ...
- 超硬核解析!Apache Hudi灵活的Payload机制
Apache Hudi 的Payload是一种可扩展的数据处理机制,通过不同的Payload我们可以实现复杂场景的定制化数据写入方式,大大增加了数据处理的灵活性.Hudi Payload在写入和读取H ...
- Postman请求报错:Error:getaddrinfo ENOENT 50.88.88.88
一.问题来源 今天发布一个新开发的项目到通州现场,内容是开放几个接口给第三方调用,需要现场部署的同事使用postman调用测试一下,现场同事使用postman调用后反馈有如下错误: 二.解决方法 发现 ...
- jQuery--内容过滤和可见性过滤
一.内容过滤 1.内容过滤选择器介绍 :empty 当前元素是否为空(是否有标签体) :contains(text) 标签体是否含有指定的文本 :has(...) ...