OpenFunction 是一个开源的云原生 FaaS(Function as a Service,函数即服务)平台,旨在帮忙开发者专一于业务逻辑的研发。在过来的几个月里,OpenFunction 社区始终在致力工作,为 OpenFunction 1.1.0 版本的公布做筹备。明天,咱们非常高兴地发表 OpenFunction 1.1.0 曾经公布了!感激社区各位小伙伴的奉献和反馈!

OpenFunction 1.1.0 版本带来了两个新的性能:新增 v1beta2 API,反对 Dapr 状态治理。此外,该版本还有多项强化及 bug 修复,使 OpenFunction 更加稳固和易用。

以下是本次版本更新的次要内容:

新增 v1beta2 API

在此版本中,咱们新增了 v1beta2 API,原 v1beta1 API 已弃用,未来会被删除。v1beta2 中有不少重构,你能够在这个 proposal 中理解更多细节。

反对 Dapr 状态治理

之前,OpenFunction 反对 Dapr 公布/订阅和绑定构建块,状态治理也是有用的构建块之一,它对于具备状态的函数十分有用。应用状态存储组件,您能够构建具备长久状态的函数,这些函数能够保留和复原它们的状态。

当初你能够在 Function CR 中定义状态存储,OpenFunction 将治理相应的 Dapr 组件。

你的函数能够应用简略封装的 Dapr 的状态治理 API 来保留、读取和查问定义的状态存储中的键/值对。

对立同步和异步函数的定义

之前,咱们应用 runtime: knativeruntime: async 来辨别同步和异步函数,这会减少学习曲线。实际上,同步和异步函数之间的区别在于触发类型:

  • 同步函数由 HTTP 事件触发,这能够通过指定 runtime: knative 来定义。
  • 异步函数由 Dapr 绑定组件或 Dapr 发布者事件触发。要指定异步函数的触发器,必须同时应用 runtime: asyncinputs

因而,咱们能够应用 triggers 来代替 runtimeinputs

HTTP Trigger 通过 HTTP 申请触发一个函数。您能够这样定义一个 HTTP Trigger

apiVersion: core.openfunction.io/v1beta2kind: Functionmetadata:  name: function-samplespec:  serving:    triggers:      http:        port: 8080        route:          rules:            - matches:                - path:                    type: PathPrefix                    value: /echo

Dapr Trigger 应用 Dapr bindingsDapr pubsub 的事件触发一个函数。你能够用 Dapr Trigger 定义一个函数:

apiVersion: core.openfunction.io/v1beta2kind: Functionmetadata:  name: logs-async-handler  namespace: defaultspec:  serving:    bindings:      kafka-receiver:        metadata:          - name: brokers            value: kafka-server-kafka-brokers:9092          - name: authRequired            value: "false"          - name: publishTopic            value: logs          - name: topics            value: logs          - name: consumerGroup            value: logs-handler        type: bindings.kafka        version: v1    triggers:      dapr:        - name: kafka-receiver          type: bindings.kafka

其余改良和优化

  • 从网关状态中删除 lastTransitionTime 字段,以避免频繁触发 reconcile。
  • 容许在创立 Dapr 组件时设置作用域。
  • 应用 OpenFunction 策略时,反对设置缓存镜像以进步构建性能。
  • 反对设置 OpenFunction 构建策略的 bash 镜像。

以上就是 OpenFunction v1.1.0 的次要性能变动,在此非常感激各位贡献者的参加和奉献。如果您正在寻找一款高效、灵便的云原生函数开发平台,那么 OpenFunction v1.1.0 相对不容错过。

理解更多对于 OpenFunction 和本次版本更新的信息,欢送拜访咱们的官方网站和 Github 页面。

  • 官网:https://openfunction.dev/
  • Github:https://github.com/OpenFunction/OpenFunction/releases/tag/v1.1.0

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