1个不稳定版本
0.2.0 | 2022年9月16日 |
---|
#369 在 操作系统
706 每月下载量
12KB
261 行
Golem
官方Rust实现Golem。Golem是一个节点网络,实现了Golem网络协议。我们以Golem守护进程Yagna的形式提供了此类节点的默认实现。
一个灵活的开源平台,用于民主化访问数字资源。
Golem网络在2021年3月的Beta I版本发布后,已正式上线以太坊主网。
Golem通过创建一个去中心化的平台,使任何人都可以构建各种应用程序、请求计算资源或提供闲置系统以换取加密货币代币(GLM),从而民主化了社会对计算能力的访问。这个去中心化网络中的参与者可以扮演以下三种非排他性角色之一
-
请求者 需要使用IT资源,如计算硬件。这些资源在去中心化市场中购买。资源的使用实际上由Golem的去中心化基础设施支持。
-
提供者 拥有可与其他网络参与者共享的IT资源。这些资源在去中心化市场中出售。
-
开发者 构建应用程序,在网络中为请求者运行。Golem的潜力远不止一个单一的应用程序。请参阅Awesome Golem,以了解可以构建和运行在Golem上的各种应用程序类型!
文档
要更深入地了解Golem的工作原理,请访问我们的文档。
项目布局
- agent/provider - 基于核心服务的提供者代理实现。
- core - 开放计算市场的核心服务。
- exe-unit - ExeUnit管理器 - yagna所有运行时共有的部分。
- test-utils - 一些用于测试的辅助工具。
- utils - 其他所有东西的垃圾桶;()
- docs - 项目文档,包括分析和规范。
公共API
公共API的Rust绑定与数据模型位于ya-client仓库。
高级API
Python的高级公共API位于yapapi仓库,而JS/TS端口包含在@golem-sdk/golem-js仓库中。
运行时
我们称我们的运行时为ExeUnit。目前我们支持
- 轻量级虚拟机 - 基于QEMU的ExeUnit。
- 以及两种WASM版本
- wasmtime - 基于Wasmtime的ExeUnit。
- emscripten - 基于SpiderMonkey的ExeUnit。
其他ExeUnit类型即将推出(见下文)。
Golem测试版发布
Golem开发的重大里程碑是Beta I和最近的Beta II。通过这些版本,我们交付了
- 最小可行产品(MVP),尽管功能还不够丰富,但它对早期用户是可用的
- 对新旧用户来说都是干净且易于使用的体验。
- 支持GLM支付(以太坊主网的L1和L2)
- 可用于生产且易于维护的代码库。
- 模块化架构,所有构建块均可替换。
- 小型二进制文件(小于30Mb)。
- 为Golem应用开发者提供的文档和SDK。
已实现和计划的功能列表
- 分布式计算
- 批处理
- 服务 (PoC阶段)
- 计算环境(即ExeUnit)
- Wasm计算
- 轻量级虚拟机
- Linux上的Docker (可选)
- Graphene上的SGX (PoC阶段)
- 支付平台
- 交易系统
- 按使用付费(lem) (更多信息)
- 按任务付费
- 为开发付费 (可选)
- 网络
- 点对点(P2P)(混合P2P;进行中)
- 能够工作在NAT后面(中继;进行中)
- 验证
- 通过冗余验证 (另见)
- 无验证
- 通过人工验证 (可选)
未来的道路
我们正在积极改进Yagna并扩展其功能,请查看即将推出的版本和其他新闻在我们的博客上。
依赖项
~5–14MB
~162K SLoC