Dapr v1.9.0 版本已发布
Dapr是一套开源、可移植的事件驱动型运行时,允许开发人员轻松立足云端与边缘位置运行弹性、微服务、无状态以及有状态等应用程序类型。Dapr能够确保开发人员专注于编写业务逻辑,而不必分神于解决分布式系统难题,由此显著提高生产力并缩短开发时长。Dapr 是用于构建云原生应用程序的开发人员框架,可以更轻松帮助开发人员在 Kubernetes 上构建运行多个微服务,并与外部状态存储/数据库、机密存储、发布/订阅代理以及其他云服务和自托管解决方案进行交互。
2022年10月13日正式发布了1.9版本,Dapr v1.9.0 版本提供了几项新功能,包括可插入组件、弹性指标和应用运行状况检查,以及核心运行时和组件中的许多修复。
- 详细了解Dapr[1]
- 阅读 Dapr 1.9.0 的发行说明[2]
亮点
可插拔组件
我们现在可以创建称为“可插拔组件”[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/
最新文章
- Postgres SQL学习笔记
- 黑马程序员——OC语言 其他语法
- (BFS)hdoj2377-Bus Pass
- C语言初学 计算三角形面积问题
- HTTP基本协议(查看网页代码)
- Top命名的一些简单用法
- 备份Rhythmbox播放器的曲目和播放列表信息
- java for循环
- P3003 [USACO10DEC]苹果交货Apple Delivery
- Cloudera Manager及CDH最新版本安装全程记录
- 什么是Web Server
- 强化学习Q-Learning算法详解
- mvc项目远程发布到windows server服务器
- re-download dependencies and 无法下载jar 的解决
- ThinkPHP5.0源码学习之框架启动流程
- mongodb 配置文件
- python颜色及背景
- odoo返写数据
- 简析iOS动画原理及实现——Core Animation
- 手机dp和px的转换
热门文章
- The Data Way Vol.1|风口下的开源:如何看待开源与商业的关系?
- 如何在BI中增加“路线地图”并进行数据分析?
- ETCD快速入门-03 常用命令
- [开源精品] C#.NET im 聊天通讯架构设计 -- FreeIM 支持集群、职责分明、高性能
- B2. Wonderful Coloring - 2
- cmake 入门笔记
- vivo 全球商城:电商平台通用取货码设计
- Pytest fixture及conftest详解
- 异步编程promise
- 用compose安装tp框架提示警告putenv