Gateway 為dApps 開發人員提供相關且具有顛覆性的後端解決方案。一個完整的工具,其中包括通過單擊幾下創建RPC 通信節點到主要區塊鍊網絡的可能性。解密。
一開始是區塊鏈
我們必須從回顧一些基本事實開始。 “區塊鏈”是由個人和/或公司管理的一組計算機。根據某些預定義的規則,他們共同參與檢查這個“去中心化登記冊”的狀態。
在互聯網的背景下,我們說的是服務器,但在區塊鏈技術的背景下,每個物理操作接口都被稱為一個節點,或節點。遍布整個星球,正是所有節點的連接使以太坊或比特幣等區塊鏈得以發揮作用。沒有主服務器或中央服務器,事實是一個歷史悠久的分佈式共識,因此網絡是去中心化的。
因此,通過擴展,節點是在計算機某處運行並允許你參與網絡的程序。與其他節點連接,它可以發送和接收信息,發出和驗證交易的有效性,甚至可以存儲和證明區塊鏈的狀態。這些共享和交互的發生要歸功於一個意義重大的小首字母縮略詞:API。
溝通的棘手問題
API 或“應用程序編程接口”被定義為一組計算機功能,兩個軟件通過這些功能無需人工中介即可交互。一個API 被分解為三個概念詞:
應用程序:這是開發人員或其他應用程序想要與之交互的任何服務。它可以是銀行服務、社交網絡、遊戲dApp、購物門戶…… 編程:開發人員創建的計算機功能,以便在應用程序提出請求時自主交互。例如,該程序可以傳輸數據、定期收集信息或填寫表格等。接口:這是API 的本質,它位於應用程序和節點之間。處理系統之間數據傳輸的中間層。
三個術語完美地總結了隱藏在這些有時復雜的程序化頭像下的問題。形式上,這些請求包括請求動詞、標頭,有時還包括請求正文,但我們稍後會談到。它們的操作如下:
客戶端應用程序(dApp) 進行API 調用以檢索信息,也稱為查詢。接收到有效請求後,接收方API 會發起對其節點的調用。這將使用請求的信息返回對其API 的響應。 API 將數據轉發到初始請求應用程序。
沒有API,節點之間就沒有交互,因此也就沒有區塊鏈。
因此,API 是必要的,但它們就足夠了嗎?
API 使提供的服務可用,以便程序或應用程序可以使用它。在某種程度上,它就像一個設備(dApp)插入的插座,這樣它就可以訪問能源(區塊鏈)並消耗它工作所需的電力(數據)。
區塊鏈技術與電網的類比是相關的
當然,這些接口在任何與計算機網絡(如Internet)非常相似或遠程相似的東西上比比皆是。有很多類型。最流行的是REST API。代表“代表性狀態轉移”的新首字母縮寫詞。該架構支持CRUD(創建/讀取/更新/刪除)操作。因此,我們有4 個不同的通道來創建、讀取、更新或刪除由你的節點管理的資源。
但正是在這裡,底部受傷了。儘管REST API 非常靈活並且與大多數協議兼容,但另一方面,REST API 僅限於數據管理角色。它們的4 個功能在阻礙它們在區塊鏈框架內的使用方面表現得非常明顯。為什麼?它的不可變特性不允許修改或刪除,使得4 種能力中的2 種成為多餘。
“少即是多” : RPCs,一個從簡單中汲取力量的通用API
加密貨幣開發人員沒有處理不合適的形式,而是自然而然地轉向了一種更高效的API 格式,我將其命名為RPC。在分佈式計算中,RPC(遠程過程調用)是指程序在單獨的位置(地址空間)執行子例程的過程。
RPC 是在節點上實現的最簡單的API。因此,開發人員可以與其他節點通信以遠程執行代碼,就像他們在程序中進行函數調用一樣。代碼執行後,將響應發送回客戶端節點。為此,他只有兩個可以使用的操作:GET 和POST。綜上所述,GET 用於檢索遠程數據,POST 用於插入/更新遠程數據。
僅GET 和POST 函數就允許你執行任何“鏈上”操作。因此,當開發人員創建dApp 時,RPC 允許他們根據用戶對去中心化服務生態系統的請求來部署代碼。當用戶使用他們的錢包進行交易或訪問DEX 時,他們的請求通過一層RPC 與持有他們感興趣的區塊鏈數據的節點進行交互。
當你可以讓它變得簡單時,為什麼要讓它變得複雜呢?
現在我們知道為什麼RPC 節點對應用程序至關重要。如果沒有發送RPC 調用的能力,我們就不能讓我們的dApp 與我們選擇的區塊鏈進行交互。這就是“如何?”的問題出現的地方。所有RPC 都基於與普通編程過程或函數調用相同的基礎進行編碼。
以以太坊為例,最常見的RPC 過程是用JSON 編碼的。它是一種基於JavaScript 語法的輕量級流行的數據結構和交易所格式。 “JSON-RPC”是根據JSON 結構簡單格式化的文本,非常容易實現、閱讀和調試。這就是它們如此普遍的原因,而不僅僅是在區塊ChainLink境中。
dApp 通過Gateway 的JSON RPC 發出請求的接口
他們通過調用遠程節點上託管的例程的請求來完成任務。它將三個輸入參數傳遞給它。節點可以選擇返回多個數據作為響應。
方法:包含要調用的例程名稱的行。 params:一組值,用於參數化定義的例程。 Id:標識請求,以便可能產生的響應到達它。
請求不一定期望得到響應。另一方面,目的節點制定的每個響應都必須是有效的。這可能包含下面提到的項目。
結果:調用例程返回的數據。錯誤:如果在請求期間發生錯誤,則存在可選元素。數據:可以包含其他特定於節點的數據的可選元素。 Id:它響應的請求的標識符。
簡單,有效,但你猜怎麼著……
開發人員有比管理節點更好的事情要做
正如我們所見,自區塊鏈誕生以來,開發人員一直在尋求簡化他們的生活。作為證明,“聖人”中本聰本人(他們自己)早在2009 年就為比特幣選擇了JSON-RPC 格式但是很可惜,事情並沒有那麼簡單……圍繞RPC 節點開發複雜的基礎設施是必要的。這個過程涉及大量的索引、查找信息、建立數據庫等…
每個開發人員的恐懼是花費太多時間來設置一個對他們正在嘗試構建的東西沒有直接貢獻的工具,而節點是這一類別中最糟糕的例子之一。構建RPC 節點所涉及的開發確實非常耗費資源和時間。將它們與生產力殺手相提並論並不少見。
好像這還不夠,一旦你的node-RPC 完美配置並正常運行,現在需要隨著時間的推移對其進行維護。以下是你在這方面承擔的任務的非詳盡清單:
節點必須定期更新,偶爾從頭開始重建,例如在硬分叉的情況下。一些查詢可能涉及數百萬個事務的執行。這些“死亡請求”通常會在凌晨3 點叫醒你以調試它們。由於各種原因,工藝節點更容易在網絡上落後:對等和連接問題、阻塞陳舊分支、內部狀態問題。你的用戶會在不知不覺中收到陳舊的數據,這可能會造成極大的破壞,你會同意… Gateway 的RPC 解決方案
Gateway因此提供了一項特別有用的服務,而且還非常完善,因為它是錦上添花,它是多鏈的開發人員,你只需單擊幾下,就可以擁有訪問多個協議數據的端口,而無需擔心自己的RPC 節點的實現
Gateway 提供可在多個網絡上運行的rpc 節點
此時,以太坊(以及所有與EVM 兼容的第2 層替代品)、Near 和Fantom 網絡都可用。這份清單顯然是臨時的,並且在未來幾個月內會定期增加。
從本質上講,Gateway 為你提供快速、完全同步和最新的RPC 節點,全天候24/7 可用。這種方法的好處很多:
無限制訪問定期更新的輕節點和完整節點,因此你不必擔心分叉或網絡更改。可擴展性和可靠性:網關RPC 節點在你需要時隨時可用,只要你想要它們。一致性:提供商需要處理棘手的邊緣情況,例如可能導致網絡狀態與其在dApp 中的表示不匹配的最後一個塊同步問題。很少有競爭供應商必須處理的問題。提高生產力:你將能夠全身心地投入到構建你的項目中,而不是為額外和耗時的問題而苦苦掙扎
創建RPC 網關身份驗證標頭的演示
Gateway 喜歡以“中心”的形式呈現自己,這是一個提供一套工具的神經中樞,旨在負責所有所謂的“後端”問題。提供比簡單提供RPC 節點更廣泛的服務。
後者的碳中和揭示了一種對生態負責的方法。它們的地理分佈保證了可用性和去中心化性。在高度戰略性的領域中追求卓越,應該很快使Gateway 的RPC 節點成為該領域的絕對“必備品”。
文章網關:Web 3.0 的可靠RPC 網關首次出現在Journal du Coin 上。
資訊來源:由0x資訊編譯自JOURNALDUCOIN。版權歸作者Florent C所有,未經許可,不得轉載