Move.

Допис

Діліться своїми знаннями.

JK spike.
Aug 15, 2025
Обговорення

Sui gRPC проти JSON-RPC для розробників

Назва: Перехід на gRPC - варто того для Sui DApps?

Оскільки gRPC приходить до Sui, мені цікаво, як розробники планують його прийняти.

Ви перевірили відмінності затримок порівняно з JSON-RPC?

Чи ідентичний набір функцій або є прогалини?

Чи вважаєте ви gRPC кращим для виробничих програм або переважно для внутрішнього інструментарію?

Будь-які поради щодо міграції, зразок клієнтського коду або показники ефективності допоможуть іншим вирішити, коли і як перемикатися.

  • Move CLI
  • Move Module
  • Move Bug
  • Feature Request
0
1
Поділитися
Коментарі
.

Відповіді

1
Genius4ever.
Aug 15 2025, 17:41

Прийняття Sui gRPC у повній бета-версії, замінивши JSON-RPC як API повного вузла за замовчуванням, пропонує розробникам швидший та ефективніший спосіб взаємодії з даними блокчейну, і багато хто дивиться на його переваги продуктивності та можливості в режимі реального часу. Тести затримки показують, що gRPC значно швидший, ніж JSON-RPC, зі швидкістю серіалізації до шести разів швидшою завдяки використанню буферів протоколів (Protobuf) над текстовим форматом JSON, а мультиплексування HTTP/2 зменшує витрати на мережу, скорочуючи час відгуку до 50% у сценаріях з високим трафіком, таких як DeFi або ігрові DApps. Набір функцій не ідентичний - GRPC додає потужні можливості потокового передавання через SubscriptionService для оновлення в режимі реального часу (наприклад, контрольні точки, транзакції), яких не вистачає JSON-RPC через підхід на основі опитування, але простіша настройка JSON-RPC все ще може відповідати базовим запитам, де переважає читабельний JSON. gRPC чудово підходить для виробничих додатків, що потребують низької затримки та масштабованості, як-от біржі або аналітика в режимі реального часу, тоді як JSON-RPC може залишатися зручним для використання JSON-RPC внутрішні інструменти або простіші скрипти завдяки більш широкій мовній підтримці та простоті використання. Для міграції почніть з перегляду протофайлів gRPC Sui на GitHub (сховище sui-apis), щоб створити клієнтські бібліотеки такими мовами, як Rust або TypeScript, і протестуйте на тест-мережі Sui, щоб порівняти продуктивність з кінцевими точками JSON-RPC. Зразок клієнта в TypeScript може виглядати так:

const { SuiClient } = require('@mysten/sui.js/client');
const client = new SuiClient({ url: 'grpc://fullnode.sui.io:443' });
async function getBalance(address) { const response = await client.getBalance({ owner: address }); 
console.log(response); }

—переконайтеся, що ви встановили @mysten /sui.js і налаштували залежності gRPC. Показники продуктивності з бета-версії Sui показують, що gRPC обробляє тисячі одночасних запитів із затримкою менше секунди, порівняно з багатосекундними затримками JSON-RPC при подібних навантаженнях. Щоб переключитися, поступово інтегруйте gRPC для високопродуктивних компонентів, зберігайте JSON-RPC для сумісності із застарілою системою (поки що підтримується) та використовуйте такі інструменти, як grpcurl, щоб експериментувати з кінцевими точками. Слідкуйте за крутішою кривою навчання gRPC за допомогою схем Protobuf і завжди моделюйте за допомогою SuicLient.dryRunTransactionBlock, щоб виявити проблеми інтеграції.

0
Коментарі
.

Ви знаєте відповідь?

Будь ласка, увійдіть та поділіться нею.

Move is an executable bytecode language used to implement custom transactions and smart contracts.

152Пости259Відповіді
Sui.X.Peera.

Зароби свою частку з 1000 Sui

Заробляй бали репутації та отримуй винагороди за допомогу в розвитку спільноти Sui.

Кампанія винагородСерпень