作者:潘志雄
AO 實(shí)際上是一個(gè)開放和靈活的數(shù)據(jù)協(xié)議,用于在 Arweave 的協(xié)議上存儲(chǔ)計(jì)算日志。它不是一個(gè)永久的賬本,也不是一個(gè)網(wǎng)絡(luò)本身。
Arweave 團(tuán)隊(duì)在預(yù)熱了很多天后,終于在發(fā)布會(huì)中宣布推出名為 AO 的并行計(jì)算機(jī)方案,他們從構(gòu)思到開發(fā)已有一年的時(shí)間,但它最早的歷史可以追溯到 Arweave 在四年前提出的基于永久存儲(chǔ)的智能合約方案 SmartWeave。這些技術(shù)方案的選擇和以太坊或其他類以太坊網(wǎng)絡(luò)差異很大:以太坊從圖靈完備的虛擬機(jī)作為開始,逐漸擴(kuò)展疆土;而 Arweave 從提供永久存儲(chǔ)的網(wǎng)絡(luò)起步,然后逐漸加上了計(jì)算能力。
發(fā)布會(huì)轉(zhuǎn)錄【中英】全文:https://bodhi.wtf/13921
這里面有太多值得對(duì)比和深挖的技術(shù)話題,Arweave 團(tuán)隊(duì)也不太可能在一個(gè)多小時(shí)的時(shí)間把所有技術(shù)亮點(diǎn)和思路解釋完整。在觀看發(fā)布會(huì)后,我整理了這些值得關(guān)注的問題和話題。
什么是 AO?
AO是一種超并行計(jì)算機(jī),它是一個(gè)去中心化的計(jì)算環(huán)境,允許同時(shí)并行運(yùn)行任意數(shù)量的進(jìn)程。與之前的去中心化計(jì)算系統(tǒng)相比,AO既能實(shí)現(xiàn)大規(guī)模計(jì)算,也能實(shí)現(xiàn)可驗(yàn)證計(jì)算。AO的核心在于它不僅僅增加了可驗(yàn)證計(jì)算的數(shù)量,而且實(shí)現(xiàn)了任意量級(jí)的可驗(yàn)證計(jì)算,通過構(gòu)建三個(gè)不同的子網(wǎng)絡(luò)以及以 Arweave 為基礎(chǔ)層,實(shí)現(xiàn)了高度的并行處理能力和可擴(kuò)展性。
為什么取名 AO?
取自于 「Actor Oriented」(面向執(zhí)行體)概念,縮寫即是 AO。
計(jì)算機(jī)科學(xué)中有一種并發(fā)計(jì)算模型叫做 Actor Model,用于設(shè)計(jì)和實(shí)現(xiàn)分布式系統(tǒng),其中基本單位是「Actor」。Actor Oriented 設(shè)計(jì)或編程是指采用 Actor 模型為基礎(chǔ)的設(shè)計(jì)或編程方法。這種方法適合于構(gòu)建高并發(fā)、分布式、容錯(cuò)性強(qiáng)的系統(tǒng)。
Arweave 創(chuàng)始人 Sam Williams 認(rèn)為 AO 是與智能合約系統(tǒng)完全不同的編程范式,而且這基本上是目前世界上所有的分布式系統(tǒng)和 Web2 時(shí)代的最佳方案。
GPT4 給我的一個(gè)例子: 可以將其比喻成戲劇演出中的演員(Actor)。在戲劇中,每個(gè)演員都扮演著一個(gè)角色,他們各自獨(dú)立行動(dòng),通過對(duì)話(消息)與其他演員互動(dòng),但他們不會(huì)共享彼此的內(nèi)部狀態(tài)(私有狀態(tài)),每個(gè)演員都只能通過觀察其他演員的行為(接收到的消息)來作出反應(yīng)。
補(bǔ)充一個(gè)趣事:1973 年提出 Actor Model 的那篇論文的標(biāo)題是《A Universal Modular Actor Formalism for Artificial Intelligence》,當(dāng)時(shí)是為了研究人工智能的。
論文鏈接:
https://dl.acm.org/doi/abs/10.5555/1624775.1624804
AO 由哪幾個(gè)部分組成?
AO 由三個(gè)子網(wǎng)組成,分別是信使單元(Messenger Unit)、調(diào)度單元(Scheduler Unit)、計(jì)算單元(Compute Unit),縮寫分別是 MU、SU、CU。MU 負(fù)責(zé)接收處理信息;SU 用來調(diào)度和給信息排序;CU 用來處理計(jì)算。
AO 和 Arweave 之間的關(guān)系是?
「AO 實(shí)際上是一個(gè)開放和靈活的數(shù)據(jù)協(xié)議,用于在 Arweave 的協(xié)議上存儲(chǔ)計(jì)算日志。它不是一個(gè)永久的賬本,也不是一個(gè)網(wǎng)絡(luò)本身?!?/p>
AO 作為一個(gè)去中心化的計(jì)算環(huán)境,利用 Arweave 的可擴(kuò)展鏈上存儲(chǔ)作為其永久主機(jī)來存儲(chǔ)運(yùn)行過程中的數(shù)據(jù)。AO 可以允許任意數(shù)量的并行進(jìn)程同時(shí)運(yùn)行,并通過消息傳遞相互協(xié)調(diào),類似于數(shù)據(jù)中心和互聯(lián)網(wǎng)上的計(jì)算機(jī)通過發(fā)送數(shù)據(jù)包來共同工作。
簡而言之,AO 構(gòu)建在 Arweave 的基礎(chǔ)層之上,利用 Arweave 提供的鏈上存儲(chǔ)功能來實(shí)現(xiàn)其去中心化計(jì)算環(huán)境的持久化存儲(chǔ)需求。
AOS 和 AO 是什么關(guān)系?
Lua 是一種怎樣的編程語言?
AO 是并行計(jì)算機(jī)的架構(gòu),而 AOS 是基于這個(gè)并行計(jì)算機(jī)方案中的一臺(tái)特定的操作系統(tǒng)。開發(fā)者可以用 Lua 語言在 AOS 中開發(fā)應(yīng)用(寫智能合約)。
Lua 是一種易于上手的高級(jí)語言,非常簡潔易用。巧的是我差不多在4年前用 Lua 寫過一些腳本,的確是一種很容易上手的編程語言。當(dāng)時(shí)我對(duì) Lua 零基礎(chǔ),但需要使用自動(dòng)化工具 HammerSpoon 中實(shí)現(xiàn)一些獲取價(jià)格和信息的功能,用了沒幾天就做出來了。如果有 GPT 幫忙,那更不在話下。
AO 有哪些應(yīng)用?
目前已經(jīng)組織社區(qū)開發(fā)了兩個(gè)應(yīng)用,分別是去中心化交易所 Bark 和去中心化穩(wěn)定幣協(xié)議 astro。Bark已經(jīng)上線測試網(wǎng),astro要之后再公開。
everVision 創(chuàng)始人 Outprog 也在發(fā)布會(huì)中露臉,還被 Sam 頻繁提及,他們開發(fā)的去中心化交易平臺(tái) Permaswap 遠(yuǎn)早于 AO 立項(xiàng),之后也有機(jī)會(huì)在 AO 的架構(gòu)下進(jìn)一步開發(fā)并擴(kuò)展。
AO 會(huì)很快迭代更新嗎?
Sam 表示,預(yù)計(jì)將來只需要進(jìn)行類似比特幣風(fēng)格的更新(也就是很低頻率)。隨著時(shí)間的推移,用戶的核心功能和權(quán)利將保持不變的小幅升級(jí)。這里沒有「相信我,兄弟」的路線圖。只有一個(gè)完整且透明的協(xié)議,你可以審計(jì)并決定是否自己使用。