OpenFunction 是一个开源的云原生 FaaS(Function as a Service,函数即服务)平台,旨在帮助开发者专注于业务逻辑的研发。在过去的几个月里,OpenFunction 社区一直在努力工作,为 OpenFunction 0.6.0 版本的发布做准备。今天,我们非常高兴地宣布 OpenFunction 0.6.0 已经正式发布了!感谢社区各位小伙伴对新功能、增强功能和错误修复的各种帮助!

OpenFunction 0.6.0 为您带来了许多值得关注的功能,包括函数插件、函数的分布式跟踪、控制自动缩放、HTTP 函数触发异步函数等。同时,异步运行时定义也被重构了。核心 API 也已经从 v1alpha1 升级到 v1beta1

面向 Serverless 函数的分布式追踪

当试图了解和诊断分布式系统和微服务时,最有效的方法之一是通过追踪函数的调用链路。分布式追踪为 Serverless 函数提供了一个关于消息流动和分布式事务监控方式的整体视图。OpenFunction 团队与 Apache SkyWalking 社区合作,增加了 FaaS 的可观测性,使得您可以在 SkyWalking UI 上通过图表来可视化 Serverless 函数的依赖关系并追踪函数的调用。

将来,OpenFunction 将在日志、指标和追踪方面为 Serverless 功能增加更多的功能。您将能够使用 Apache SkyWalking 和 OpenFunction,为您的 Serverless 工作负载建立一个开箱即用的全栈 APM(Application Performance Monitoring)。此外,OpenFunction 将支持 OpenTelemetry,帮助您利用 Jaeger 或 Zipkin 作为分布式追踪的其它选项。

支持 Dapr 发布/订阅和绑定(Binding)

Dapr Binding 允许您使用来自外部系统的事件触发您的应用程序或服务,或与外部系统对接。OpenFunction 0.6.0 为其同步函数增加了 Dapr 输出绑定(Output Binding),使异步函数通过 HTTP 同步函数进行触发成为了可能。例如,由 Knative 运行时支持的同步函数现在可以与由 Dapr 输出绑定或 Dapr Pub/Sub 中间件 进行交互,异步函数将被同步函数发送的事件所触发。您可以通过这个 指南 获得快速入门样例。

异步函数则引入了 Dapr Pub/Sub,提供一个平台无关的 API 来发送和接收消息。一个典型的用例是,您可以利用同步函数来接收纯 JSON 或 Cloud Event 格式的事件,然后将收到的事件发送到 Dapr 输出绑定或 Pub/Sub 组件,比如是一个消息队列(如 Kafka、NATS Streaming、GCP PubSub)。最后,异步函数可以从消息队列中被触发。您可以通过这个 指南 获得快速入门样例。

函数的自动伸缩行为控制

OpenFunction 0.6.0 集成了 KEDA ScaledObject 规范,用于定义 KEDA 应该如何扩展您的应用程序以及触发器是什么。您只需要在 OpenFunction 函数的 CRD 中定义伸缩下限和上限,而无需改变您的代码。

同时,OpenFunction 社区也在开发控制并发性和同时请求数的能力,它继承了 DaprKnative 的定义。分布式计算的一个典型用例是只允许一定数量的请求同时执行。您将能够控制多少个请求和事件将同时调用您的应用程序。这个功能将在下一个版本中得到完全支持,敬请期待!如果您对这个功能感兴趣,请查看官方代码仓库中的 讨论,了解详细的背景。

在实践中学习

OpenFunction 的创始人霍秉杰先生在 Dapr 社区会议上介绍了 OpenFunction 0.6.0 的两个典型用例:

  1. HTTP trigger for asynchronous functions with OpenFunction and Kafka
  2. Elastic Kubernetes log alerts with OpenFunction and Kafka

您可以观看下面这两段视频,并按照实践指南进行练习。

您还可以从 发布说明 中了解更多关于 OpenFunction 0.6.0 的信息。参照 快速入门样例 开始使用 OpenFunction。

本文由博客一文多发平台 OpenWrite 发布!

OpenFunction 0.6.0 发布: FaaS 可观测性、HTTP 同步函数能力增强及更多特性的更多相关文章

  1. Excelize 2.4.0 正式版发布, 新增 152 项公式函数支持

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准.可以使用它来读取.写入由 Microsoft Exc ...

  2. 从同步函数 hello-world-dotnet 开始探索OpenFunction

    OpenFunction[1] 是一个现代化的云原生 FaaS(函数即服务)框架,它引入了很多非常优秀的开源技术栈,包括 Knative.Tekton.Shipwright.Dapr.KEDA 等,这 ...

  3. Redis 3.0正式版发布,正式支持Redis集群

    Redis是一个开源.基于C语言.基于内存亦可持久化的高性能NoSQL数据库,同时,它还提供了多种语言的API.近日,Redis 3.0在经过6个RC版本后,其正式版终于发布了.Redis 3.0的最 ...

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

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

  5. Bootstrap v4.0.0-alpha.5 发布,大量更新

    Bootstrap v4.0.0-alpha.5 发布了,Bootstrap是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的 ...

  6. (转载)一个用于Gnome桌面的下拉式终端: Guake 0.7.0 发布

    转自:https://linux.cn/article-5507-1.html Linux的命令行是最好.最强大的东西,它使新手着迷,并为老手和极客的提供极其强大的功能.那些在服务器和生产环境下工作的 ...

  7. Ionic 2.0.0-rc.1 发布,HTML5 移动应用框架

    Ionic 2.0.0-rc.1 发布了,Ionic Framework 是个高级的 HTML5 移动端应用框架,是个很漂亮的使用 HTML5 开发混合移动应用前端框架.本次更新内容如下: Bug 修 ...

  8. MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题

    ///MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题,在webconfig中配置<system.web><authentication mode ...

  9. log-malloc2 0.2.4 发布

    log-malloc2 0.2.4 发布了,该版本修复了日志格式输出的 bug. og-malloc2 是一个 malloc 日志预加载库,用于检测内存泄漏问题.

  10. TypeScript 0.9.1 发布,新增 typeof 关键字

    TypeScript 0.9.1 发布了,该版本提升了编译器和语言的性能,增加新的语言特性 typeof ,更好的 this 处理等.详细介绍请看发行说明. TypeScript 是微软新推出的一种语 ...

随机推荐

  1. NVIDIA人形机器人AI套件:NVIDIA Isaac Manipulator 和 NVIDIA Isaac Perceptor

    IsaacManipulator 为机械臂提供了卓越的灵活性和模块化AI功能,并提供了一系列强大的基础模型和GPU加速库.它提供了高达80倍的路径规划加速,零样本感知提高了效率和吞吐量,使开发者能够实 ...

  2. pytorch 第三方模块 GraphNAS 安装成功记录

    实验室的小师妹要安装pytorch的第三方模块,经过多方努力没有安装上,后来我接手后也是感觉头疼. 该模块地址:   https://github.com/GraphNAS/GraphNAS 该模块主 ...

  3. java多线程之ReentrantLock详解

    1.背景 2.基本语法 public class Test01 { // 定义锁 static ReentrantLock reentrantLock = new ReentrantLock(); p ...

  4. Java中0.2减0.1 结果为什么不是0.1?

    double 表示这种类型的数值精度是 float 类型的两倍(有人称之为双精度数值).绝大部 分应用程序都采用double 类型.在很多情况下,float 类型的精度很难满足需求.实际上,只 有很少 ...

  5. RabbitMQ普通集群同一宿主机docker搭建

    1.准备3个节点安装rabbitmq,搭建集群(注意:每个节点启动间隔15~20s,如果启动失败,需删除宿主机文件重新启动) 2.宿主机文件目录手动创建,并设置可操作权限 准备宿主机文件目录 cd / ...

  6. win32 对话框模板添加加速键

    今天想在菜单中添加加速键的时候,因是用的对话框模板,不能接受WM_KEYDOWN消息, 在网上收了半天,都不理想,最后在看WM_COMMAND的时候发现有个 wparam的低位有个加速键标识 最后把这 ...

  7. Kubernetes-11:ConfigMap介绍及演示

    ConfigMap存在的意义 ConfigMap 功能在 Kubernetes1.2版本引入,许多应用程序会从配置文件.命令行参数或环境变量中读取配置信息,ConfigMap API 给我们提供了向容 ...

  8. chrome.tabs.sendMessage和chrome.runtime.sendMessage的用法及区别

    在 Chrome 扩展开发中,chrome.tabs.sendMessage 和 chrome.runtime.sendMessage 是用于不同目的的消息发送 API,它们的主要区别在于消息的目标对 ...

  9. Docker网络中篇-docker网络的四种类型

    通过上一篇学习,我们对docker网络有了初步的了解.本篇,咱们就来实战docker网络. docker网络实战 实战docker网络,我们将从以下几个案例来讲解 1:birdge是什么? 2:hos ...

  10. c++字符编码转换

    c++字符编码转换 简述 字符编码一直是软件开发中很麻烦的问题.当前项目开发普遍使用的字符集是utf-8,而windows系统则默认是gbk,linux默认编码则是utf-8,所以想要开发一个在win ...