词汇表

词汇表#

本节将介绍 openYuanrong 常用术语。

openYuanrong 函数(openYuanrong Function)

openYuanrong 分布式调度运行的基本单位。相比传统 Serverless 函数概念,openYuanrong 函数更加通用,支持运行中动态创建、长时运行、相互间异步调用、有状态等等,可以表达任意分布式应用的运行实例,起到类似单机 OS 中进程的作用。

有状态函数(Stateful Function)

openYuanrong 函数支持有状态,这里的状态是指程序运行中可以访问和修改的进程内私有变量。典型的状态如进程内静态变量、面向对象编程中的成员变量等。基于有状态函数概念,openYuanrong 提供了多语言编程接口,让原来基于 Python、Java 和 C++ 开发的单机类(class)可以自动转换为 openYuanrong 有状态函数运行。

无状态函数(Stateless Function)

无状态函数是有状态函数的特例,它的执行不依赖状态,仅依赖输入参数。基于无状态函数概念,openYuanrong 提供了多语言编程接口,让原来使用 Python、Java 和 C++ 开发的单机函数可以自动转换为 openYuanrong 无状态函数运行。

数据对象(Object)

数据对象是可以在多个 openYuanrong 函数间跨节点分布式共享访问的内存数据,支持基于共享内存的高性能 put/get 访问和修改;此外,也可作为函数调用的参数和返回值,自动分布式传递和共享,并支持异步 Future 语义:比如,对某个函数的调用可返回一个数据对象 Future 引用,此时还可将该对象引用作为新的函数调用参数使用;openYuanrong 会在运行中自动解析引用,并通过自动分布式引用计数管理数据对象生命周期。

数据流(Stream)

数据流是可以在多个 openYuanrong 函数间跨节点分布式传递共享的有序无界内存数据集,支持基于共享内存的高性能 pub/sub 访问,支持一对一、一对多、多对一等多种发布订阅模式。通过数据流可方便地解耦多个不同函数,实现多个函数间异步流式数据传递和计算。

主节点(Master)

openYuanrong 集群中包含控制面(集群管理、调度等)和数据面(运行分布式任务)组件的节点。控制面包括的组件有 function master,数据面包括的组件有 function proxyfunction agentruntime managerdata worker

从节点(Agent)

openYuanrong 集群中只包含数据面(运行分布式任务)组件的节点,包括的组件有 function proxyfunction agentruntime managerdata worker 。一台主机上可以部署多个从节点。

函数系统(Function System)

openYuanrong 系统之一,提供大规模分布式动态调度,支持函数实例极速弹性扩缩和跨节点迁移,实现集群资源高效利用。

数据系统(Data System)

openYuanrong 系统之一,提供异构分布式多级缓存,支持 Object、Stream 语义,实现函数实例间高性能数据共享及传递。

Driver

应用的启动进程名称。例如 Python 的启动脚本、C++ 的二进制运行文件或 Java 的可执行 jar 包。

函数实例(Worker)

运行 openYuanrong 函数的进程。

运行时(Runtime)

openYuanrong 函数的运行环境。

主机部署(进程部署)

在主机上以进程方式拉起所有 openYuanrong 组件,并提供基础的健康监测和进程重拉机制。进程部署通常用于轻量级的本地验证及其他对可用性、可靠性、隔离性要求不高的场景。