Arweave 团队在预热了很多天后,终于在发布会中宣布推出名为 AO 的并行计算机方案,他们从构思到开发已有一年的时间,但它最早的历史可以追溯到 Arweave 在四年前提出的基于永久存储的智能合约方案 SmartWeave。这些技术方案的选择和以太坊或其他类以太坊网络差异很大:以太坊从图灵完备的虚拟机作为开始,逐渐扩展疆土;而 Arweave 从提供永久存储的网络起步,然后逐渐加上了计算能力。
这里面有太多值得对比和深挖的技术话题,Arweave 团队也不太可能在一个多小时的时间把所有技术亮点和思路解释完整。在观看发布会后,我整理了这些值得关注的问题和话题。
什么是 AO?
AO 是一种超并行计算机,它是一个去中心化的计算环境,允许同时并行运行任意数量的进程。与之前的去中心化计算系统相比,AO 既能实现大规模计算,也能实现可验证计算。AO 的核心在于它不仅仅增加了可验证计算的数量,而且实现了任意量级的可验证计算,通过构建三个不同的子网络以及以 Arweave 为基础层,实现了高度的并行处理能力和可扩展性。
为什么取名 AO?
取自于 「Actor Oriented」(面向执行体)概念,缩写即是 AO。
计算机科学中有一种并发计算模型叫做 Actor Model,用于设计和实现分布式系统,其中基本单位是「Actor」。Actor Oriented 设计或编程是指采用 Actor 模型为基础的设计或编程方法。这种方法适合于构建高并发、分布式、容错性强的系统。
Arweave 创始人 Sam Williams 认为 AO 是与智能合约系统完全不同的编程范式,而且这基本上是目前世界上所有的分布式系统和 Web2 时代的最佳方案。
GPT 4 给我的一个例子: 可以将其比喻成戏剧演出中的演员(Actor)。在戏剧中,每个演员都扮演着一个角色,他们各自独立行动,通过对话(消息)与其他演员互动,但他们不会共享彼此的内部状态(私有状态),每个演员都只能通过观察其他演员的行为(接收到的消息)来做出反应。
补充一个趣事: 1973 年提出 Actor Model 的那篇论文的标题是《A Universal Modular Actor Formalism for Artificial Intelligence》,当时是为了研究人工智能的。
AO 由哪几个部分组成?
AO 由三个子网组成,分别是信使单元(Messenger Unit)、调度单元(Scheduler Unit)、计算单元(Compute Unit),缩写分别是 MU、SU、CU。MU 负责接收处理信息;SU 用来调度和给信息排序;CU 用来处理计算。
AO 和 Arweave 之间的关系是?
「AO 实际上是一个开放和灵活的数据协议,用于在 Arweave 的协议上存储计算日志。它不是一个永久的账本,也不是一个网络本身。」
AO 作为一个去中心化的计算环境,利用 Arweave 的可扩展链上存储作为其永久主机来存储运行过程中的数据。AO 可以允许任意数量的并行进程同时运行,并通过消息传递相互协调,类似于数据中心和互联网上的计算机通过发送数据包来共同工作。
简而言之,AO 构建在 Arweave 的基础层之上,利用 Arweave 提供的链上存储功能来实现其去中心化计算环境的持久化存储需求。
AOS 和 AO 是什么关系? Lua 是一种怎样的编程语言?
AO 是并行计算机的架构,而 AOS 是基于这个并行计算机方案中的一台特定的操作系统。开发者可以用 Lua 语言在 AOS 中开发应用(写智能合约)。
Lua 是一种易于上手的高级语言,非常简洁易用。巧的是我差不多在 4 年前用 Lua 写过一些脚本,的确是一种很容易上手的编程语言。当时我对 Lua 零基础,但需要使用自动化工具 HammerSpoon 中实现一些获取价格和信息的功能,用了没几天就做出来了。如果有 GPT 帮忙,那更不在话下。
AO 有哪些应用?
目前已经组织社区开发了两个应用,分别是去中心化交易所 Bark 和去中心化稳定币协议 astro,可类比为 Uniswap 和 MakerDAO。Bark 已经上线测试网,astro 要之后再公开。
EverVision 创始人 Outprog 也在发布会中露脸,还被 Sam 频繁提及,他们开发的去中心化交易平台 Permaswap 远早于 AO 立项,之后也有机会在 AO 的架构下进一步开发并扩展。
AO 会很快迭代更新吗?
Sam 表示,预计将来只需要进行类似比特币风格的更新(也就是很低频率)。随着时间的推移,用户的核心功能和权利将保持不变的小幅升级。这里没有「相信我,兄弟」的路线图。只有一个完整且透明的协议,你可以审计并决定是否自己使用。
AO 有独立的代币吗?
还未公开这部分的信息。