项目简介
本项目开发了一个高性能、低资源占用的Linux用户态函数计算任务框架。借助轻量级任务抽象和分级隔离模型,降低过度隔离带来的开销,提升代码执行效率与响应速度,能让云边端各类设备具备FaaS(Function as a Service)能力。
项目的主要特性和功能
- 高性能与低资源占用:运用轻量级任务抽象,减少容器或进程等复杂系统抽象造成的资源占用和延迟。
- 高并发处理能力:支持高并发场景下的函数计算,通过多线程和任务队列实现高效的任务调度与执行。
- 分级隔离模型:对不同租户、不同应用以及同一应用内不同函数进行不同级别的隔离,减少过度隔离开销。
- 多语言支持:支持C、Python等多种编程语言,通过LLVM - WebAssembly方案达成多语言支持。
- 动态函数加载:支持动态加载函数,方便开发者动态添加、删除和更新函数服务。
安装使用步骤
环境准备
- 确保系统已安装C语言编译器(如GCC)和必要的库(如nng库)。
- 确认CMake版本为3.13及以上。
源码下载
从Gitee或其他代码托管平台下载项目的源码文件。
编译安装
- 运行以下命令以自动下载依赖并编译项目:
shell chmod +x ./auto-build.sh ./auto-build.sh
- 编译完成后,生成的二进制文件将位于
build
目录下。
启动服务
- 进入
build
目录,运行以下命令以启动主服务:shell ./lutf
- 若需修改监听地址,可以指定URL参数:
shell ./lutf <url_func>
测试函数服务
- 运行以下命令以启动客户端测试程序:
shell ./worker_test_ppdi
- 若需修改测试地址,可以指定URL参数:
shell ./worker_test_ppdi <url_func> <url_work>
- 测试程序将模拟计算密集型任务或IO密集型任务,并发送多次函数执行请求。
动态函数管理
- 通过
url_func
端口,开发者和管理员可以添加、暂停、恢复和删除函数任务。 - 用户请求
url_work
路由时,框架将执行对应的函数并返回结果。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】