AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

CloudState:用于 Knative/Kubernetes 的开源无服务器框架

  • 2019-09-23
  • 本文字数:1077 字

    阅读完需:约 4 分钟

CloudState:用于Knative/Kubernetes的开源无服务器框架

Lightbend 最近发布了 CloudState。CloudState 是首个可用于对 Knative/Kubernetes 堆栈进行状态管理的开源无服务器(serverless)框架。


据 Jonas Bonér 所说:


CloudState 是一个围绕状态管理通过添加概念、模型和实现来定义什么是“serverless 2.0”(或者下一代 serverless 是什么)的倡议。任何构建过云应用程序(分布式系统)的人都知道,状态实际上是最难处理的,而到目前为止,serverless 或多或少会忽略状态管理这一点。所以我们试着把它和两件事情结合起来。首先是标准化工作,为实现这些功能定义规范、协议和 TCK。其次是参考实现,实现规范。


CloudState 基本上由两部分组成:标准化工作,定义用户函数与后端之间的规范、协议和 TCK;以及一个参考实现,它用多种语言实现了后端和一组客户端的 API 库。


CloudState 是为基于事件驱动的架构、事件源、CQRS、集群分片、数据和处理协同定位、CRDTs 以及其他常见的分布式模式而设计的。此外,CloudState 的参考实现利用了运行在 kubernetes 上的KnativegRPCAkka集群GraalVM ,这不仅使应用程序能够有效地伸缩,而且还能使应用程序在保持其全局或本地数据一致性的同时,在一定范围内可靠地管理分布式状态。


让我们看下 CloudState 服务是怎样的:



(图片来自https://github.com/cloudstateio


  • Ingress(入口)——可以是 Istio、Knative、或 Kubernetes 中常规的 ClusterIP 服务通信

  • Akka Sidecar(Akka 侧车)——由 CloudState 操作符注入;每个请求都会经过它。单个 CloudState 服务的 sidecars 形成一个集群,使用 Akka remoting 彼此直接通信。

  • Code(代码)——由开发人员实现的函数。它可以用任何支持 gRPC 的语言编写。Akka sidecars 使用预定义的 gRPC 协议与用户函数通信。

  • Distributed Datastore (分布式数据存储)——当服务需要持久化状态时使用。需要注意的是,用户代码并不直接与数据存储交互,它先是与 Akka sidecars 交互,Akka sidecars 再与数据存储通信。


CloudState 实现了自己的自动容量伸缩器,使用 Knative 的自动容量伸缩器进行实验时,一旦对 Akka 集群进行扩容就会带来一些问题,其中一个问题是当添加新节点时,会重新平衡切分,并复制状态。一次启动太多的节点或者是只启动节点而不立即停止它们时,将会显著降低吞吐量和性能。


有关 CloudState 的更多详细信息可以查看GitHub repo。它还有一个示例应用程序,是用JavaJavaScript实现的简单聊天程序。


想要贡献力量的用户可以订阅邮件列表,加入Gitter频道进行讨论,或者通过Twitter进行联系。


原文链接:


CloudState, an Open Source Serverless Framework for Knative/Kubernetes


2019-09-23 08:001854
用户头像

发布了 342 篇内容, 共 244.0 次阅读, 收获喜欢 630 次。

关注

评论 1 条评论

发布
暂无评论
发现更多内容

鸿蒙应用示例:字体的使用和注意事项记录

zhongcx

鸿蒙

Viper,一个Go语言配置管理神器!

左诗右码

《Django 5 By Example》阅读笔记:p165-p210

codists

Python django

Red Hat Enterprise Linux 10 下载 - 红帽企业 Linux

sysin

redhat RHEL

30+程序员降薪跳槽到银行,技术优势在晋升体系下成了空谈

码哥字节

银行 互联网人 职场晋升

不同团队如何实现登录系统 (just for fun)

八苦-瞿昙

just for fun

一文读懂Lumoz主网上线前的活动红利:从空投到OG NFT

股市老人

高并发编程/消息传递机制避免锁提高并发效率,不懂的赶紧进来(设计篇)

肖哥弹架构

Java 并发编程 高并发

一文读懂Lumoz主网上线前的活动红利:从空投到OG NFT

加密眼界

从空投到OG NFT:全方位解读Lumoz主网上线前的活动

石头财经

鸿蒙NEXT开发案例:计数器

zhongcx

鸿蒙 NEXT 开发案例:指尖抓阄

zhongcx

鸿蒙

企业必备:8 款团队项目管理软件对比与推荐

易成研发中心

2024-11-16:哈沙德数。用go语言,如果一个整数能够被它的各个数位上数字的和整除, 我们称这个整数为哈沙德数(Harshad number)。 给定一个整数 x, 如果 x 是哈沙德数,则返回

福大大架构师每日一题

福大大架构师每日一题

一文读懂Lumoz主网上线前的活动红利:从空投到OG NFT

BlockChain先知

鸿蒙NEXT开发案例:抽奖

zhongcx

鸿蒙

springboot整合工作常用框架中间件

恩爸编程

缓存 spring-cloud spring-boot 数据库、 消息列队

ESG,产品经理认证新热点

科技热闻

ESG,全才产品经理培训新特色

科技热闻

矩阵起源入选IDC《RAG与向量数据库市场前景预测》报告

MatrixOrigin

IDC 向量数据库

轻松在 Neolink.AI 上搭建你的个性化 ChatGPT 服务

MatrixOrigin

ChatGPT 定制

直播回顾 | MatrixOne 2.0 AI 向量数据库与GenAI能力深度解析

MatrixOrigin

数据库 云原生 AI搜索

探索《Crypto Rumble》游戏:核心玩法篇

股市老人

CloudState:用于Knative/Kubernetes的开源无服务器框架_服务革新_Diogo Carleto_InfoQ精选文章