Dapr是一套开源、可移植的事件驱动型运行时,允许开发人员轻松立足云端与边缘位置运行弹性、微服务、无状态以及有状态等应用程序类型。Dapr能够确保开发人员专注于编写业务逻辑,而不必分神于解决分布式系统难题,由此显著提高生产力并缩短开发时长。Dapr 是用于构建云原生应用程序的开发人员框架,可以更轻松帮助开发人员在 Kubernetes 上构建运行多个微服务,并与外部状态存储/数据库、机密存储、发布/订阅代理以及其他云服务和自托管解决方案进行交互。

2022年10月13日正式发布了1.9版本,Dapr v1.9.0 版本提供了几项新功能,包括可插入组件、弹性指标和应用运行状况检查,以及核心运行时和组件中的许多修复。


亮点


可插拔组件

我们现在可以创建称为“可插拔组件”[3]的私有组件。只需使用任何支持gRPC 的语言编写一个带有 gRPC 服务的组件,将二进制文件放入文件系统中,即可开始使用。在Sample 仓库里提供了一个 .NET的模板例子[4]。

可观察性:Open Telemetry(OTEL) 协议支持
OpenTelemetry(OTEL) 将OpenCensus、Zipkin 和OpenTracing等项目组合到标准 API 和规范集中,用于跟踪和指标。在1.9 版本中,Dapr 包括了 对OpenTelemetry的支持[5]。
可观察性:弹性能力指标

已添加用于弹性能力[6]的指标,能够跟踪以下各项的数量:

  • 已加载弹性策略
  • 执行弹性策略的次数
可靠性:应用程序运行状况检查

应用运行状况检查[7]是一项新功能,允许探测应用程序的运行状况并对状态更改做出反应。启用应用程序运行状况检查后,Dapr 运行时将通过 HTTP 或 gRPC 调用定期轮询应用程序。当 Dapr 检测到应用的运行状况出现故障时,它会代表应用程序停止接受新的请求。

可靠性:默认弹性策略

借助弹性策略,我们现在可以设置默认策略[8],这些策略的范围可能很广。这是通过应用于给定策略的保留关键字来完成的。有 3 种默认策略类型:

    • DefaultRetryPolicy
    • DefaultTimeoutPolicy
    • DefaultCircuitBreakerPolicy

如果定义了这些策略,将它们用于对服务、应用程序或组件的每个操作。还可以通过对特定目标使用其他关键字来修改它们以使其更具体。

服务调用:应用中间件

现在,在进行服务到服务调用时,可以使用任何中间件组件。例如,用于零信任环境中的令牌验证或应用 OAuth 策略。服务到服务调用中间件组件[9]适用于从 Dapr sidecar 到接收应用程序的所有传出调用。

发布/订阅:命名空间使用者组

将 Dapr 应用程序部署到所有共享相同app id的不同命名空间,并将所有主题订阅的范围限定在命名空间级别。使用用于发布/订阅的命名空间使用者组[10],开发团队可以重用相同的发布/订阅底层基础架构,而无需根据他们运行的命名空间更改其代码。

相关链接:

[1]详细了解Dapr: https://docs.dapr.io/concepts/overview/

[2]阅读 Dapr 1.9.0 的发行说明:https://blog.dapr.io/posts/2022/10/13/dapr-v1.9-is-now-available/

[3]可插拔组件: https://v1-9.docs.dapr.io/operations/components/pluggable-components

[4].NET的模板例子:https://github.com/dapr/samples/tree/master/pluggable-components-dotnet-template

[5]对OpenTelemetry的支持:https://v1-9.docs.dapr.io/developing-applications/building-blocks/observability/w3c-tracing-overview/

[6]弹性能力: https://github.com/dapr/dapr/blob/master/docs/development/dapr-metrics.md#resiliency

[7]应用运行状况检查:https://v1-9.docs.dapr.io/operations/observability/app-health

[8]默认策略:https://v1-9.docs.dapr.io/operations/resiliency/policies/#setting-default-policies

[9]服务到服务调用中间件组件:https://v1-9.docs.dapr.io/developing-applications/middleware/#configuring-app-middleware-pipelines

[10]用于发布/订阅的命名空间使用者组: https://v1-9.docs.dapr.io/developing-applications/building-blocks/pubsub/howto-namespace/

Dapr v1.9.0 版本已发布的更多相关文章

  1. sa-token v1.9.0 版本已发布,带来激动人心新特性:同端互斥登录

    sa-token是什么? sa-token是一个JavaWeb轻量级权限认证框架, 官网首页:http://sa-token.dev33.cn/ 如果你经常使用腾讯QQ,就会发现它的登录有如下特点:它 ...

  2. swoole-1.7.18 版本已发布,支持 PHP7

    swoole-1.7.18 版本已发布,支持 PHP7 matyhtf 发布于: 2015年07月23日 (22评) 分享到:    收藏 +16 3月19日,深圳源创会火热报名中,go>> ...

  3. Volcano社区v1.6.0版本正式发布

    摘要:Volcano社区v1.6.0版本正式发布.此次版本增加了弹性作业管理.基于真实负载的动态调度. 基于真实负载的重调度.Volcano Job插件--MPI等多个新特性. 本文分享自华为云社区& ...

  4. RDIFramework.NET平台代码生成器V3.0版本全新发布-更新于20160518(提供下载)

    最新版本请转到:RDIFramework.NET平台代码生成器V3.1版本全新发布-更新于2016-10-08(提供下载) RDIFramework.NET代码生成器V3.0版本修改了针对3.0版本的 ...

  5. 二进制搭建Kubernetes集群(最新v1.16.0版本)

    目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...

  6. RDIFramework.NET ━ .NET快速信息化系统开发框架钜献 V3.0 版本强势发布

    继上个版本“RDIFramework.NET V2.9版本”的推出,受到了重多客户的认可与选择,V2.9版本是非常成功与稳定的版本,感谢大家的认可与长期以来的关注与支持.V3.0版本在V2.9版本的基 ...

  7. Apache Hudi 0.6.0版本重磅发布

    1. 下载信息 源码:Apache Hudi 0.6.0 Source Release (asc, sha512) 二进制Jar包:nexus 2. 迁移指南 如果您从0.5.3以前的版本迁移至0.6 ...

  8. Apache Hudi 0.7.0版本重磅发布

    重点特性 1. Clustering 0.7.0版本中支持了对Hudi表数据进行Clustering(对数据按照数据特征进行聚簇,以便优化文件大小和数据布局),Clustering提供了更灵活地方式增 ...

  9. Apache Hudi 0.8.0版本重磅发布

    1. 重点特性 1.1 Flink集成 自从Hudi 0.7.0版本支持Flink写入后,Hudi社区又进一步完善了Flink和Hudi的集成.包括重新设计性能更好.扩展性更好.基于Flink状态索引 ...

随机推荐

  1. MGR的gtid_executed不连续的问题分析

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1.问题描述 在做MGR测试的时候偶尔遇到gtid_executed事务ID不连续的问题,但是并不影响数据库的正常运行.现 ...

  2. 基于.NET6、FreeSql、若依UI、LayUI、Bootstrap构建插件式的CMS

    近几年,.net生态日益强大,特别是跨平台技术,性能提升,那真的是强大无比.为了日常能够快速开发,笔者基于基于.NET6.FreeSql.若依UI.LayUI.Bootstrap构建插件式的CMS,请 ...

  3. 完整代码:WTL_Freecell绿色版

    WTL_Freecell是WTL编制的空当接龙绿色版,介绍参见:https://www.cnblogs.com/ybmj/p/11339911.html .这里提供WTL_Freecell的完整代码 ...

  4. 2021年5月15日海外 Meetup 演讲内容分享

    北京时间 2021 年 5 月 16 日 05:00-08:00 我们与Apache ShardingSphere 联合举办了第一场海外Meetup,感谢各位小伙伴的参与,让本次活动圆满结束. 同时我 ...

  5. CSP AFO后可以公开的情报

    10.08 早上和下午准备初赛,晚上考了套题,然后就摸文化课去了. \(250/250\) 手动模拟确实效果好 经验是把双刃剑,读题细致才是王道 T3是分治,一看到1e5的数据就习惯性往数据结构想,一 ...

  6. 完整实现-通过DelayQueue实现延时任务

    实现延时任务有很多的方法,网上关于延时任务的实现的文章已经不少了.比如:实现延时任务的10种方法等等.但是这些文章基本上都是将方法大概的列举一下,给出部分示例代码,对于有经验的老程序员可能一看就知道该 ...

  7. systemd之导致内核 crash

    本文主要讲解linux kernel panic系列其中一种情况: Attempted to kill init! exitcode=0x0000000b 背景:linux kernel 的panic ...

  8. 「题解报告」P4577 [FJOI2018]领导集团问题

    题解 P4577 [FJOI2018]领导集团问题 题解区好像没有线段树上又套了二分的做法,于是就有了这片题解. 题目传送门 怀着必 WA 的决心交了两发,一不小心就过了. 题意 求一个树上最长不下降 ...

  9. 解决element-ui中组件【el-upload】一次性上传多张图片的问题

    element-ui 中的组件 el-upload默认的行为是一张图片请求一次,在项目需求中,通常是多张图片要求只向后台请求一次,下面的做法就是为了实现这样的需求 前端 <el-upload r ...

  10. File类、FileOutputStream

    day01 File类 File类的每一个实例可以表示硬盘(文件系统)中的一个文件或目录(实际上表示的是一个抽象路径) 使用File可以做到: 1:访问其表示的文件或目录的属性信息,例如:名字,大小, ...