Багато людей стикаються з терміном RPC, коли вручну додають мережевий RPC у такі гаманці, як MetaMask. Однак RPC є незамінною основоположною технологією для додатків блокчейну, таких як Dapps, Wallets і CEX. RPC означає «Віддалений виклик процедури». У Web2 RPC — це техніка зв’язку, яка дозволяє одному комп’ютеру викликати та виконувати програму на іншому. Через RPC абоненту потрібно лише передати назву служби та параметри для зв’язку, що є широким поняттям. У контексті блокчейну RPC — це протокол, який дозволяє клієнтам взаємодіяти з блокчейном. Користувачі можуть запитувати інформацію, пов’язану з блокчейном (наприклад, висоту блоку, деталі блоку та з’єднання вузлів) і надсилати транзакції через інтерфейс RPC.
Сторінка мережевих доповнень Metamask (Джерело: Metamask)
Важливо розуміти три основні ролі RPC:
Графік викликів RPC (джерело: Google)
Детальна технічна архітектура показана на малюнку вище. Щоб пояснити вам більш чітко, ми беремо процес заповнення звіту керівником проекту як приклад, щоб пояснити детальний процес виклику:
Щоб прояснити це за допомогою простої аналогії, уявіть, що ви менеджер проекту, якому потрібен складний звіт. Можливо, ви не володієте технічними знаннями, тому залучаєте аналітика даних. Ви:
Враховуючи децентралізовану та розподілену природу блокчейнів, дані зберігаються на численних вузлах. Зокрема, щоб запустити вузол і брати участь у перевірці блоків, комп’ютери повинні відповідати певним апаратним і програмним критеріям. У таких мережах, як ETH і ADA, запущені вузли також вимагають стекінгу певної кількості токенів.
Не кожен вузол може використовувати протокол RPC. Як правило, лише комп’ютери, на яких працює клієнтське програмне забезпечення блокчейну, можуть діяти як вузли RPC. Більшість проектів не можуть нести витрати на експлуатацію та технічне обслуговування запущених вузлів, враховуючи величезну кількість часу, робочої сили та ресурсів. Це призвело до появи виділених вузлів RPC і постачальників послуг.
З попереднього розділу очевидно, що життєво важливою функцією RPC (Remote Procedure Call) є встановлення зв’язку між термінальними програмами та блокчейном. Таким чином, основним використанням RPC є під час процесу розробки вибір відповідного постачальника послуг RPC, щоб користувачі могли виконувати транзакції та запити в ланцюжку.
Для звичайного користувача Web3 найбільш прямим варіантом використання є перехід на шлюз RPC із меншою затримкою під час перевантаження мережі, що зменшує затримку та прискорює виконання транзакцій. Теоретично RPC можна застосувати до будь-якого проекту, який потребує блокчейн-транзакцій або інформаційних запитів.
Приватний RPC
Переважна більшість блокчейнів пропонують безкоштовні публічні RPC для тестування додатків. Однак вони мають обмеження швидкості, що призводить до появи приватних RPC. Приватна кінцева точка RPC має унікальну URL-адресу, і лише її власник може використовувати цю URL-адресу для надсилання транзакцій до публічного пулу пам’яті, таким чином пропонуючи пряме з’єднання з постачальником вузла. Переваги використання приватних RPC на практиці включають:
Що стосується використання RPC у розробці, розробникам слід звернутися до документації. У цій статті в якості ілюстрації використовується перемикач RPC у гаманцях, таких як MetaMask: перейдіть до налаштувань, виберіть мережу, клацніть назву мережі, для якої ви хочете змінити RPC, змініть URL-адресу RPC праворуч і збережіть, щоб завершити змінити. Користувачам слід враховувати рівні затримки, оскільки перехід на RPC із високою затримкою може сповільнити швидкість транзакцій.
У MetaMask є сторінка зміни RPC (джерело: веб-версія MetaMask).
Під час його використання вкрай важливо порівняти рівні затримки. Якщо ви перейдете на RPC із більшою затримкою, швидкість транзакцій може сповільнитися.
Через складність налаштування та експлуатації вузлів виникла категорія підприємств, які спеціалізуються на експлуатації цих вузлів для надання таких послуг, як RPC/API для проектів. Проекти можуть надсилати запити цим постачальникам через Інтернет. Ці провайдери запускають повністю синхронізовані, завжди оновлені вузли, доступні 24/7, замість того, щоб проекти надсилали запити до своїх локальних вузлів. Багато провайдерів пропонують більше, ніж просто послуги RPC; вони також пропонують різні пов’язані послуги, такі як API, SDK тощо. Розробникам і окремим користувачам при виборі постачальника важливо враховувати такі фактори, як швидкість транзакції, вартість, обслуговування клієнтів і набір інструментів, які вони пропонують.
Постачальники послуг RPC також надають приватні RPC, згадані раніше. Більшість постачальників RPC обслуговують багатоланцюгові операції та часто пропонують безкоштовні пробні та публічні версії. Нижче наведено кілька популярних постачальників послуг RPC:
Флеш-боти
Flashbots — це дослідницька компанія, яка зосереджується на майнерській цінності (MEV), щоб пом’якшити негативні зовнішні ефекти та ризики, які MEV створює для блокчейнів смарт-контрактів. Їх служба RPC, Flashbots Protect, складається як з RPC, так і з API. Розробники можуть легко вставити його у свої програми за допомогою API. Звичайні користувачі можуть додати його RPC у свої гаманці, скеровуючи свої транзакції на Flashbots. Цей процес передбачає надсилання транзакцій безпосередньо майнерам, а не публічному пулу, що запобігає «сендвіч-атаці», поширеній у MEV. Зараз Flashbots є провідною організацією в галузі досліджень MEV.
Примітка. Сендвіч-атака означає тактику завершення торгівлі безпосередньо перед підтвердженням транзакції користувача, що спричиняє зростання ціни, а потім продаж із надбавкою після завершення транзакції користувача для отримання прибутку.
Інфура
Infura — це продукт IaaS (інфраструктура як послуга), призначений для полегшення доступу до даних Ethereum для розробників і користувачів. Діючи як повноцінний вузол Ethereum, він пропонує інтерфейс API, який дозволяє DApps швидко підключатися до платформи Ethereum для взаємодії без запуску локального вузла Ethereum. Його клієнтура включає Metamask, Uniswap, Compound тощо.
Алхімія
Alchemy надає SDK і API для створення багатоланцюжкових Web3 DApps і навчає користувачів використанню цих інструментів через ініціативи спільноти та університету. Alchemy підтримала понад 100 мільярдів доларів транзакцій у мережі, має понад 10 мільйонів кінцевих користувачів і отримала понад 1,5 мільярда доларів роялті. Відомими клієнтами є Opensea, GMX і AAVE.
Анкр
Ankr пропонує різноманітні сервіси вузлів, у тому числі публічні та приватні вузли, які підтримують понад 30 блокчейнів. Ankr також надає інтерфейси API на основі протоколів RPC і WebSocket, а також кілька інструментів розробки та SDK, таких як Web3.js і Truffle, що дозволяє розробникам легко створювати та розгортати блокчейн-додатки. Їх клієнтська база включає Binance, Sushiswap, Meta Apes тощо.
Quicknode
QuickNode надає послуги API користувачам безпосередньо через виділені вузли. Він підтримує різні регіони, численні тестові мережі та архівні вузли, пропонуючи розробникам покращену продуктивність доступу до блокчейну та більшу стабільність. Функції включають інтуїтивно зрозумілу інформаційну панель, аналітичний пакет і віддалений запис викликів процедур, що підтримує понад 20 ланцюжків. Серед клієнтів Nansen, Algofi та Dapprader.
BlockPI
BlockPI — це RPC із розподіленою мережевою структурою, розподілений багатоланцюжковий рівень прискорення, що бере участь у децентралізованому середовищі Web3. На початку 2023 року компанія успішно оновила свій публічний RPC, запропонувавши більш стабільну та швидшу безкоштовну службу RPC. Теоретично його архітектура принципово вирішує проблему перевантаження запитів RPC і може похвалитися нескінченною масштабованістю.
Завдяки безперервному вдосконаленню технології блокчейн і зростаючому застосуванню Web3, RPC-сервіси, як одна з основних служб, мають багатообіцяюче майбутнє. Попит розробників на послуги RPC прогнозовано зростатиме. З точки зору окремої людини, постійні трейдери, які потребують вищої швидкості транзакцій, можуть отримати значну вигоду від вибору менш використовуваного загальнодоступного RPC або інвестування в приватний RPC, особливо для таких видів діяльності, як airdrops або карбування NFT.
Багато людей стикаються з терміном RPC, коли вручну додають мережевий RPC у такі гаманці, як MetaMask. Однак RPC є незамінною основоположною технологією для додатків блокчейну, таких як Dapps, Wallets і CEX. RPC означає «Віддалений виклик процедури». У Web2 RPC — це техніка зв’язку, яка дозволяє одному комп’ютеру викликати та виконувати програму на іншому. Через RPC абоненту потрібно лише передати назву служби та параметри для зв’язку, що є широким поняттям. У контексті блокчейну RPC — це протокол, який дозволяє клієнтам взаємодіяти з блокчейном. Користувачі можуть запитувати інформацію, пов’язану з блокчейном (наприклад, висоту блоку, деталі блоку та з’єднання вузлів) і надсилати транзакції через інтерфейс RPC.
Сторінка мережевих доповнень Metamask (Джерело: Metamask)
Важливо розуміти три основні ролі RPC:
Графік викликів RPC (джерело: Google)
Детальна технічна архітектура показана на малюнку вище. Щоб пояснити вам більш чітко, ми беремо процес заповнення звіту керівником проекту як приклад, щоб пояснити детальний процес виклику:
Щоб прояснити це за допомогою простої аналогії, уявіть, що ви менеджер проекту, якому потрібен складний звіт. Можливо, ви не володієте технічними знаннями, тому залучаєте аналітика даних. Ви:
Враховуючи децентралізовану та розподілену природу блокчейнів, дані зберігаються на численних вузлах. Зокрема, щоб запустити вузол і брати участь у перевірці блоків, комп’ютери повинні відповідати певним апаратним і програмним критеріям. У таких мережах, як ETH і ADA, запущені вузли також вимагають стекінгу певної кількості токенів.
Не кожен вузол може використовувати протокол RPC. Як правило, лише комп’ютери, на яких працює клієнтське програмне забезпечення блокчейну, можуть діяти як вузли RPC. Більшість проектів не можуть нести витрати на експлуатацію та технічне обслуговування запущених вузлів, враховуючи величезну кількість часу, робочої сили та ресурсів. Це призвело до появи виділених вузлів RPC і постачальників послуг.
З попереднього розділу очевидно, що життєво важливою функцією RPC (Remote Procedure Call) є встановлення зв’язку між термінальними програмами та блокчейном. Таким чином, основним використанням RPC є під час процесу розробки вибір відповідного постачальника послуг RPC, щоб користувачі могли виконувати транзакції та запити в ланцюжку.
Для звичайного користувача Web3 найбільш прямим варіантом використання є перехід на шлюз RPC із меншою затримкою під час перевантаження мережі, що зменшує затримку та прискорює виконання транзакцій. Теоретично RPC можна застосувати до будь-якого проекту, який потребує блокчейн-транзакцій або інформаційних запитів.
Приватний RPC
Переважна більшість блокчейнів пропонують безкоштовні публічні RPC для тестування додатків. Однак вони мають обмеження швидкості, що призводить до появи приватних RPC. Приватна кінцева точка RPC має унікальну URL-адресу, і лише її власник може використовувати цю URL-адресу для надсилання транзакцій до публічного пулу пам’яті, таким чином пропонуючи пряме з’єднання з постачальником вузла. Переваги використання приватних RPC на практиці включають:
Що стосується використання RPC у розробці, розробникам слід звернутися до документації. У цій статті в якості ілюстрації використовується перемикач RPC у гаманцях, таких як MetaMask: перейдіть до налаштувань, виберіть мережу, клацніть назву мережі, для якої ви хочете змінити RPC, змініть URL-адресу RPC праворуч і збережіть, щоб завершити змінити. Користувачам слід враховувати рівні затримки, оскільки перехід на RPC із високою затримкою може сповільнити швидкість транзакцій.
У MetaMask є сторінка зміни RPC (джерело: веб-версія MetaMask).
Під час його використання вкрай важливо порівняти рівні затримки. Якщо ви перейдете на RPC із більшою затримкою, швидкість транзакцій може сповільнитися.
Через складність налаштування та експлуатації вузлів виникла категорія підприємств, які спеціалізуються на експлуатації цих вузлів для надання таких послуг, як RPC/API для проектів. Проекти можуть надсилати запити цим постачальникам через Інтернет. Ці провайдери запускають повністю синхронізовані, завжди оновлені вузли, доступні 24/7, замість того, щоб проекти надсилали запити до своїх локальних вузлів. Багато провайдерів пропонують більше, ніж просто послуги RPC; вони також пропонують різні пов’язані послуги, такі як API, SDK тощо. Розробникам і окремим користувачам при виборі постачальника важливо враховувати такі фактори, як швидкість транзакції, вартість, обслуговування клієнтів і набір інструментів, які вони пропонують.
Постачальники послуг RPC також надають приватні RPC, згадані раніше. Більшість постачальників RPC обслуговують багатоланцюгові операції та часто пропонують безкоштовні пробні та публічні версії. Нижче наведено кілька популярних постачальників послуг RPC:
Флеш-боти
Flashbots — це дослідницька компанія, яка зосереджується на майнерській цінності (MEV), щоб пом’якшити негативні зовнішні ефекти та ризики, які MEV створює для блокчейнів смарт-контрактів. Їх служба RPC, Flashbots Protect, складається як з RPC, так і з API. Розробники можуть легко вставити його у свої програми за допомогою API. Звичайні користувачі можуть додати його RPC у свої гаманці, скеровуючи свої транзакції на Flashbots. Цей процес передбачає надсилання транзакцій безпосередньо майнерам, а не публічному пулу, що запобігає «сендвіч-атаці», поширеній у MEV. Зараз Flashbots є провідною організацією в галузі досліджень MEV.
Примітка. Сендвіч-атака означає тактику завершення торгівлі безпосередньо перед підтвердженням транзакції користувача, що спричиняє зростання ціни, а потім продаж із надбавкою після завершення транзакції користувача для отримання прибутку.
Інфура
Infura — це продукт IaaS (інфраструктура як послуга), призначений для полегшення доступу до даних Ethereum для розробників і користувачів. Діючи як повноцінний вузол Ethereum, він пропонує інтерфейс API, який дозволяє DApps швидко підключатися до платформи Ethereum для взаємодії без запуску локального вузла Ethereum. Його клієнтура включає Metamask, Uniswap, Compound тощо.
Алхімія
Alchemy надає SDK і API для створення багатоланцюжкових Web3 DApps і навчає користувачів використанню цих інструментів через ініціативи спільноти та університету. Alchemy підтримала понад 100 мільярдів доларів транзакцій у мережі, має понад 10 мільйонів кінцевих користувачів і отримала понад 1,5 мільярда доларів роялті. Відомими клієнтами є Opensea, GMX і AAVE.
Анкр
Ankr пропонує різноманітні сервіси вузлів, у тому числі публічні та приватні вузли, які підтримують понад 30 блокчейнів. Ankr також надає інтерфейси API на основі протоколів RPC і WebSocket, а також кілька інструментів розробки та SDK, таких як Web3.js і Truffle, що дозволяє розробникам легко створювати та розгортати блокчейн-додатки. Їх клієнтська база включає Binance, Sushiswap, Meta Apes тощо.
Quicknode
QuickNode надає послуги API користувачам безпосередньо через виділені вузли. Він підтримує різні регіони, численні тестові мережі та архівні вузли, пропонуючи розробникам покращену продуктивність доступу до блокчейну та більшу стабільність. Функції включають інтуїтивно зрозумілу інформаційну панель, аналітичний пакет і віддалений запис викликів процедур, що підтримує понад 20 ланцюжків. Серед клієнтів Nansen, Algofi та Dapprader.
BlockPI
BlockPI — це RPC із розподіленою мережевою структурою, розподілений багатоланцюжковий рівень прискорення, що бере участь у децентралізованому середовищі Web3. На початку 2023 року компанія успішно оновила свій публічний RPC, запропонувавши більш стабільну та швидшу безкоштовну службу RPC. Теоретично його архітектура принципово вирішує проблему перевантаження запитів RPC і може похвалитися нескінченною масштабованістю.
Завдяки безперервному вдосконаленню технології блокчейн і зростаючому застосуванню Web3, RPC-сервіси, як одна з основних служб, мають багатообіцяюче майбутнє. Попит розробників на послуги RPC прогнозовано зростатиме. З точки зору окремої людини, постійні трейдери, які потребують вищої швидкості транзакцій, можуть отримати значну вигоду від вибору менш використовуваного загальнодоступного RPC або інвестування в приватний RPC, особливо для таких видів діяльності, як airdrops або карбування NFT.