OpenFunction 是一个开源的云原生 FaaS(Function as a

Service,函数即服务)平台,旨在帮助开发者专注于业务逻辑的研发。在过去的几个月里,OpenFunction 社区一直在努力工作,为 OpenFunction 0.7.0 版本的发布做准备。今天,我们非常高兴地宣布

OpenFunction 0.7.0 已经正式发布了!感谢社区各位小伙伴的贡献和反馈!

OpenFunction 0.7.0 为您带来了许多新功能,包括新增 OpenFunction Gateway 作为同步函数入口、 新增 Java 和 NodeJS 同步函数和异步函数支持、新增 Helm 安装方式。

同时, 我们对 OpenFunction 依赖的组件都进行了版本升级。

OpenFunction Gateway

OpenFunction 从 0.5.0 开始采用 Kubernetes Ingress 来提供同步函数的统一入口,并且必须安装一个 nginx-ingress-controller。

在 OpenFunction 0.7.0 中,我们基于 Kubernetes Gateway API 实现了 OpenFunction Gateway 替代之前基于

Kubernetes Ingress 的 Domain 来访问同步函数的方法。

OpenFunction Gateway 提供了更强大、更灵活的函数网关,包含以下特性:

  • 可以选择任意支持 Kubernetes Gateway APIGateway 实现,如 Contour, Istio, Apache APISIX, Envoy Gateway 等。
  • 可以选择安装默认的 Gateway 实现(Contour), 此时 OpenFunction 将自动创建 Kubernetes Gateway。OpenFunction 也可以使用您环境中现有的 Kubernetes Gateway,只需要您在 OpenFunction Gateway 中引用它即可。
  • 可以自定义访问函数的模式,如基于 host 的路由模式和基于 path 的路由模式,在您没有定义函数路由时 OpenFunction 默认提供基于 host 的路由模式来访问函数。
  • 可以在函数路由部分自定义流量应该如何到达函数,OpenFunction 基于 Gateway API HTTPRoute 为您提供了强大的函数路由功能。
  • 可以通过函数外部地址在集群外部访问函数,只需要在OpenFunction Gateway 中配置好集群外部可以访问的域名即可(同时支持 Magic DNS 和 Real DNS)。
  • 现在 OpenFunction 将流量直接转发到 Knative Revision 而不再经过 Knative 的 Gateway。 如果不需要直接访问 Knative 服务, 您可以忽略 Knative Domain 相关的错误。

将来,OpenFunction 将支持在函数的不同版本之间进行流量分发。

多语言支持

OpenFunction 社区一直在努力完善多语言的支持:

  • Go

    functions-framework-go 发布了 v0.4.0,支持在一个函数中定义多个子函数,并且可以通过不同的 Path 和 Method 分别调用。

  • Java

    functions-framework-java 现在支持同步函数和异步函数。

  • NodeJS

    functions-framework-nodejs 发布了 v0.5.0, 支持同步函数和异步函数,并且支持同步函数触发异步函数。

    我们将在近期发布 functions-framework-nodejs v0.6.0,为您带来更多功能比如插件机制、与 SkyWalking 集成等。

OpenFunction 将会在后续版本支持更多语言如 Python、Dotnet 等。

Helm 安装 OpenFunction 及所有依赖组件

原来基于 CLI 安装的方法已弃用。

现在 OpenFunction 支持通过 Helm 安装 OpenFunction 及所有依赖的组件,相比原来通过 CLI 安装的方式更加云原生, 并且解决了部分用户访问 Google Container Registry(gcr.io)镜像受限的问题, 并且将长期维护。

TL;DR

helm repo add openfunction https://openfunction.github.io/charts/
helm repo update
helm install openfunction openfunction/openfunction -n openfunction --create-namespace

依赖组件升级

Components OpenFunction 0.6.0 OpenFunction 0.7.0
Knative Serving 1.0.1 1.3.2
Dapr 1.5.1 1.8.3
Keda 2.4.0 2.7.1
Shipwright 0.6.1 0.10.0
Tekton Pipelines 0.30.0 0.37.0

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

OpenFunction 0.7.0 发布: OpenFunction Gateway、多语言及 Helm 安装支持的更多相关文章

  1. Nacos发布0.5.0版本,轻松玩转动态 DNS 服务

    阿里巴巴微服务开源项目Nacos于近期发布v0.5.0版本,该版本主要包括了DNS-basedService Discovery,对Java 11的支持,持续优化Nacos产品用户体验,更深度的与Sp ...

  2. Nacos Committers 团队首亮相,发布 0.9.0 版本

    223 天,发布 14 个版本,19 位 Committers,39 位 Contributors. 在宣布开源后的第 223 天,Nacos 发布了其第14个版本 - 0.9.0,该版本提升了 Na ...

  3. 3.0.0 alpha 重磅发布!九大新功能、全新 UI 解锁调度系统新能力

    2022 年 4 月 22 日,Apache DolphinScheduler 正式宣布 3.0.0 alpha 版本发布!此次版本升级迎来了自发版以来的最大变化,众多全新功能和特性为用户带来新的体验 ...

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

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

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

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

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

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

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

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

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

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

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

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

  10. log-malloc2 0.2.4 发布

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

随机推荐

  1. Audio2Gesture:NVIDIA 黄仁勋的3D虚拟人技术 —— 元宇宙

    相关: https://www.nvidia.com/en-us/on-demand/session/omniverse2020-om1573/ https://www.nvidia.com/zh-t ...

  2. 最为期待的国产3D游戏 —— 3A大作 ——《黑神话:悟空》

    地址: https://www.heishenhua.com/

  3. 【转载】 NVIDIA RTX2080ti不支持P2P Access,这是真的么?

    原文地址: http://www.gpus.cn/gpus_list_page_techno_support_content?id=30 ------------------------------- ...

  4. .NET电子邮件高效处理解决方案

    前言 在日常软件开发中,电子邮件处理是一个不可或缺的功能,无论是用户注册验证.通知推送还是日常的业务沟通,都离不开电子邮件的支持.今天大姚给大家分享2款.NET开源.高效.强大的.NET电子邮件处理库 ...

  5. B站基于Apache DolphinScheduler的一站式大数据集群管理平台(BMR)初窥

    一.背景 大数据服务是数据平台建设的基座,随着B站业务的快速发展,其大数据的规模和复杂度也突飞猛进,技术的追求也同样不会有止境. B站一站式大数据集群管理平台(BMR),在千呼万唤中孕育而生.本文简单 ...

  6. 23 暑假友谊赛 No.4(UKIEPC 2017)

    23 暑假友谊赛 No.4(UKIEPC 2017) Problem A Alien Sunset hh,开始一眼差分,但是写寄了qwq,后来换枚举过了(Orz,但是看学长差分是能做的,我就说嘛,差分 ...

  7. 玩转内核链表list_head,3个超级哇塞的的例子

    在Linux内核中,提供了一个用来创建双向循环链表的结构 list_head.虽然linux内核是用C语言写的,但是list_head的引入,使得内核数据结构也可以拥有面向对象的特性,通过使用操作li ...

  8. 动物园 (APIO 2007) 状压DP

    动物园 \([APIO \ 2007]\) · 题意: 新建的圆形动物园是亚太地区的骄傲.圆形动物园坐落于太平洋的一个小岛上,包含一大圈围栏,每个围栏里有一种动物.如下图所示: 你是动物园的公关主管. ...

  9. P10884 [COCI 2017-2018#2] San

    题目传送门:P10884 [COCI 2017-2018#2] San 看下标签 COCI(克罗地亚) 2017 啊 比我小4年的题 --------------------------------- ...

  10. redux-persist状态持久化6.0.0版本

    网上挺少关于redux-persist的教程,个人去github看了下,看的一脸懵逼,然后百度查了查,发现redux-persist每一个版本的语法改的都挺大的,造成我下载的6版本在网上之中到一个教程 ...