Web3.0架構不僅是去中心化的更是模塊化的

作者:Xiang|W3.Hitchhiker

一、Web 2.0 架構

Web2.0應用以去中心交易所Binance 為例,Binance 允許用戶去交易各種代幣。

Binance是一個Web 2.0 應用程序,架構聽起來很簡單,但實際上在開發中,需要進行大量的工作。

用戶需要通過網絡運營商來使設備聯網,然後打開瀏覽器,輸入幣安的域名,通過http 協議去訪問幣安的網站。

Binance 需要用戶通過手機或者郵箱來進行註冊並登錄該平台。

然後幣安自己需要一個地方來存儲像用戶註冊信息,交易額度,成交歷史,掛單等的基礎數據。而這些都需要搭建一個數據庫用來存儲,並且要不斷地更新。

其次,後端代碼語言(像Node.js, Java, or Go)決定了Binance 的所有的業務邏輯。需要一個搭建服務器部署後端跑後端的邏輯。例如,當新用戶註冊、交易,掛單會發生什麼情況?

還有,像前端代碼語言(JavaScript, HTML, and CSS )決定了Binance 的UI 邏輯。需要一個搭建服務器部署到前端跑前端的交互邏輯。例如,網站是什麼樣子的?當用戶與頁面上的每個按鍵交互時會發生什麼?

當你在Binance 上寫交易時,這些所有的東西都會整合起來進行聯動。你與它的前端互動,前端和後端交互,後端再與它的數據庫交互。所有這些代碼都託管在中心化服務器上,並通過互聯網瀏覽器反饋給用戶,而中心化服務器的所有控制權在Binance 的手上。

這是對當今大多數Web 2.0 應用程序的工作原理的一個簡單總結,當然實際會更為複雜。

二、Web 3.0 架構

Web 3.0 應用以Uniswap 為例,Uniswap 是去中心交易所,允許自由添加並交易各種代幣。

Uniswap是一個Web 3.0 應用程序,架構聽起來很複雜,但實際開發實現很簡單。

首先,用戶要通過設備來進行聯網,需要通過網絡服務商,類似電信,移動之類。 (去中心化的網絡服務商,物聯網:Helium)

然後,用戶訪問程序要通過瀏覽器或者操作系統(去中心化的瀏覽器或操作系統:Brave)

用戶訪問程序要通過瀏覽器與服務端交互,這一操作需要通過協議來支持(傳統是http,新的可由 IPFS來替代,通過內容尋址)

Uniswap需要用戶通過私鑰,錢包去登錄(類似插件,錢包等:Metamask、Tokenpocket、Math、Brave錢包),此外統一的DID 也是未來的一個方向(類似ENS 等)

錢包需要連接區塊鏈的節點,這時會需要節點的服務器來提供,這也就需要對應區塊鏈的節點,或者由 Infura/Alchemy 這種專業的節點服務提供商來進行。 (去中心化的節點服務提供商也是一個趨勢:Pocket)

Uniswap 網站是什麼樣子的,當用戶與頁面上的每個按鍵交互時會發生什麼?還是JavaScript,HTML 和CSS 之類的前端代碼語言實現Uniswap 的UI 邏輯。

但Web3 可以不需要自己搭建服務器部署跑前端的交互邏輯。這些前端的數據可以保存在去中心化的存儲網絡中。 (如 Filcoin、SWARM、AR 等)

以下是Uniswap 的官方的IPFS 鏈接,此方案不需要搭建前端服務器,用戶同樣可以正常使用。

ipfs://bafybeiagkgmmhux6fswdoedmwqqsvt5arjivl35wuk25jljb2yqgn7njgu/#/swap

以上的鏈接,可以看到是由ipfs:// 開頭的,所以需要支持解析ipfs的瀏覽器才能打開(Brave、Opera)

並且該鏈接不是人類可讀的,所以又需要域名服務,把對應的域名映射到該鏈接,例如uniswap.eth。 (去中心化的域名服務:IPNS、ENS 等)

當然IPFS 也只支持兼容Http 的網關去訪問。

Uniswap Interface

當網站訪問量高的時候,需要更加靈活的帶寬市場—— CDN 加速網絡。 (CDN 服務、IPFS、Filecoin 檢索市場)

Uniswap 通過區塊鏈智能合約語言solidity 等實現,決定了Uniswap 的所有的業務邏輯。因為是跑在EVM 環境內,所以Uni 不需要自己搭建服務器部署後端跑業務邏輯(支持智能合約的區塊鏈、ETH 等)。

但交易所需要展示的,肯定不只是業務邏輯,也需要展示幣價的歷史價格曲線,交易額度等。這些歷史數據並不能通過智能合約獲取。假設項目方需要展示的話,仍然需要自己搭建服務器,跑一個節點,通過鏈上的數據,篩選出來保存到Uni 自己的數據庫。所以Web3 需要一個鏈數據索引的解決方案。 (鏈數據索引平台Graph )

The Graph 就提供了一個鏈數據索引方案,可以方便用戶查詢數據。在The Graph 中,你可以定義哪些智能合約需要索引、哪些事件與函數調用需要監聽,包括調用時、產生時的狀態,也可以規定如何將傳入的事件轉化為前端邏輯可處理的。

鏈上數據的保存會由專門的Graph 索引挖礦節點保存,該索引節點將提供API 供用戶頁面端調用,項目方不需要搭建服務器,只有索引節點需要搭建服務器來跑索引數據挖礦節點。

通過索引區塊鏈數據,The Graph 可以讓我們在應用邏輯中查詢鏈上數據,並且幾乎不會出現延遲的情況。

例如Uniswap 交易信息的呈現就是通過The Graph 生成的。

Uniswap Info

如果Uniswap 想呈現的更多,把鏈下的幣價數據也在鏈上呈現出來,這時就需要打通鏈下鏈上數據的橋樑(去中心化的預言機:chainlink)。

按照以上的開發邏輯,Uniswap 相當於發布了一個Web 3.0 的應用,但實際實現的成本比開發幣安交易所的成本低非常多,因為:

  • Uniswap 不需要用戶綁定郵箱,綁定手機,可以直接通過錢包登錄,Uni 自身也不需要保存

  • Uniswap 可以不需要搭建前端服務器,用戶可通過IPFS 或AR 存儲前端頁面進行訪問

  • 不需要搭建後端服務器。後端邏輯是跑在智能合約上

  • 不需要搭建數據庫,歷史數據與數據庫操作通過TheGraph 來實現

專業的人去做專業的事,Uniswap 只需做好、設計好自己的邏輯,其他邏輯由模塊化Web3 基礎設施去支撐。

這樣Uniswap 不僅僅實現了完全的去中心化,也是Web3 模塊化的一個簡單的應用案例。

Web3 的核心是能去信任化交互價值,模塊化的發展不僅能做到去信任化,還能提高運行的效率,模塊化的趨勢會應用到各行各業。

前文所說的是Web3 網絡架構的模塊化,提高了Web3 的生成力效率,那怎麼提高Web3 生產關係的效率(Web2 的生產關係主要以公司為主,Web3 的生成關係就是DAO,DAO 的模塊化也是未來的趨勢)。 DAO 又依賴於區塊鏈,區塊鏈本身也正在走向模塊化,同理元宇宙,遊戲等等都是如此。

模塊化時代到來將帶來更高的效率,更好的服務,W3Hitchhiker 將持續跟進crypto 的模塊化之路。

Total
0
Shares
Related Posts