除了平行鏈,你還可以使用平行執行緒加入波卡生態!

買賣虛擬貨幣

平行執行緒(Parathread)是想要成為平行鏈的專案臨時參與 Polkadot 共享安全的一種方式,不需要租用專用的平行鏈插槽。這是透過在多個平行執行緒中經濟地競爭,來共享平行鏈插槽這種稀缺資源實現的。那些無法獲得完整的平行鏈插槽,或者認為這樣做在經濟上不是很明智的鏈,仍然可以參與波卡的共享安全性,儘管會根據每個塊收來取相關費用。同時,它還為平行鏈專案提供了一個優雅的退出,可以繼續使用中繼鏈,但不用需要一個專用的平行鏈插插槽。

起初

波卡中的 Parathread 的想法是 Gavin 在中國上海的一次 Meetup 中提出。這個概念的起源來自 80 年代末和 90 年代早期個人電腦有限記憶體資源的類似概念。由於計算機的實體記憶體有限,當應用程式需要更多記憶體時,計算機可以使用硬碟上的交換空間來建立虛擬記憶體。交換空間允許計算機記憶體的容量擴充套件,並允許更多的程序同時執行,而有些程序需要更長的時間才能完成。

平行鏈 vs 平行執行緒

從開發的角度來看,平行鏈和平行執行緒非常相似。我們可以想象,一個用 Substrate 開發的鏈在某個時間點可能會是這三個狀態中的之一:1)作為橋,有自己安全性的獨立鏈,2)平行鏈,或 3)平行執行緒。它可以在最後兩種狀態之間切換,從開發者的角度看,只需很少的開發量,因為他們更多是經濟上的區別,而不是技術上的區別。

Parathread 連線到 Polkadot 有著與平行鏈完全一樣的好處。也就是說,它能夠透過 XCMP 向其他 para{chain,threads} 傳送訊息,並且它也是共享 Polkadot 的驗證人節點池來獲得安全性的。

平行鏈和平行執行緒之間的區別是經濟上的。Parachains 必須透過 Polkadot 的常規方法註冊,即治理議案或平行鏈插槽拍賣。Parathread 有一個固定的註冊費,但實際上要比獲得一個平行鏈插槽的成本低得多。類似於 DOT 在平行鏈插槽期間被鎖定,然後返還給拍賣的獲勝者,平行執行緒的押金也將在其期限結束後返還給使用平行執行緒的專案。

註冊 Parathread 並不能保證將 Parathread 程式碼註冊到 Polkadot 中繼鏈。當一個平行執行緒透過產生一個新的塊來繼續程序時,必須支付一定的費用去參與每個塊的拍賣,從而被包括在下一個中繼鏈塊的驗證中。所有註冊的平行執行緒都在這個拍賣中競爭它們的平行執行緒,從而被包括在中繼鏈的區塊中。

關於平行執行緒有兩個有趣的觀察。

第一,由於它們是按塊競爭的,這與比特幣或以太坊中的交易方式相似。類似的收費市場可能會發展起來,這意味著市場好的時候將推動參與平行執行緒的價格上漲,而市場低迷時則需要更低的費用。

第二,這種機制與 parachain 機制有明顯不同,平行機制是隻要你還在平行鏈插槽的使用期,你就可以被包含到中繼鏈的區塊中;而平行執行緒的註冊不授予平行執行緒這樣的許可權。

平行執行緒如何被操作?

中繼鏈上平行鏈插槽的一部分將被指定為平行執行緒池的一部分。換言之,一些平行鏈插槽將不附加平行鏈,而是被用作一個空間,在逐個區塊中對平行執行緒拍賣的獲勝者可以包含他們的候選區塊到這個空間。

收集人將為平行執行緒候選區塊提供一個 DOT 的出價。中繼鏈塊生產者能夠從這些競拍中選擇要包括的平行執行緒塊。顯而易見,他們接受出價最高的區塊候選人,這將給他們帶來最大的利潤。來自 parathread 出價的代幣很可能會被分成 80-20,這意味著 80% 進入了 Polkadot 的 treasury 國庫,20% 給到區塊生產者。這也是同樣適用於交易費用的劃分,並且和 Polkadot 中的許多其他引數一樣,可以透過治理機制進行更改。

有關 parathread 協議的精確描述,請參閱此處。https://hackmd.io/UcOOzoyDR9WJpQBZICtg3Q?both#Parathread-Protocol

平行執行緒的經濟機制

對收集人來說有兩種補償來源:

假設一個 parathread 有自己的原生代幣系統,那麼它將從其原生代幣的交易費中支付給收集人。如果 parathread 沒有自己的代幣,或者它的代幣沒有價值(例如,它只用於治理),那麼它可以使用 DOT 來激勵收集人。

平行執行緒協議的補貼。一個 parathread 可以造出新的代幣,以便給收集人提供額外的激勵。可能,要為 parathread 生成的原生代幣的數量是時間的函式,在中繼鏈中包含的 parathread 塊之間經過的時間越長,parathread 願意補貼的代幣就越多,以便可以被包含到中繼鏈。這種鑄幣過程的具體實施可能是透過平行執行緒原生代幣的通脹,或者透過像國庫這樣的資金儲備。

可以用平行執行緒的原生代幣支付收集人。然而,中繼鏈只使用 Polkadot 通用貨幣(DOT)進行交易。所以收集人必須使用 DOT 來提交一個相關的競拍,從而來提交候選區塊。這意味著,如果平行執行緒提供一種原生代幣,則收集人需要了解該代幣與 DOT 之間的匯率,以便在中繼鏈上進行適當的 DOT 出價,並確保它們獲利。

平行鏈插槽交換

對於持有平行鏈插槽的專案來說,可以用 parathread 交換這個 slot 插槽,這樣 parathread “升級”為完整的平行鏈,平行鏈就變成了 parathread。鏈也可以不再是鏈,繼續作為執行緒而不交換插槽。如果插槽空位,將在下一個拍賣期拍賣。

這為租賃期已經到期並且沒有足夠的使用率來證明續約的平行鏈提供了一個很好的退出,它們可以保持在中繼鏈上的註冊,只在需要的時候生成新的塊。

平行執行緒有助於緩解平行鏈插槽的急劇停止,它可以允許平行鏈繼續做一些有用的事情來生成塊,即使租一個平行鏈插槽在經濟上不再可行的情況下。

平行鏈下線總是按照以下順序進行:Parachain -> Parathread -> Dormant thread(休眠執行緒)。這個過程不是自動的,因為一個執行緒需要一個存款,如果出於某種原因,該鏈中沒有一個操作實體(沒有 sudo 或民主成員來進行存款),那一個過期的 parachain 將直接跳轉到休眠執行緒。

當休眠時,ParaId 和原始的創世,以及所有歷史上最終確定的塊都會留在中繼鏈上,因此,如果休眠執行緒或一個鏈重建社羣併為一個新的插槽或平行執行緒存款籌集資金,則它可以在中斷的地方繼續執行。

原文連結:https://wiki.polkadot.network/docs/en/learn-parathreads

翻譯:PolkaWorld

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;