[{"data":1,"prerenderedAt":368},["ShallowReactive",2],{"article-ru-chto-takoe-grpc":3,"articles-titles-ru":312},{"id":4,"title":5,"body":6,"date":270,"description":271,"draft":272,"extension":273,"faq":274,"faqTitle":302,"image":303,"meta":304,"navigation":305,"path":306,"seo":307,"sitemap":308,"stem":309,"tags":310,"__hash__":311},"articlesRu\u002Fru\u002Fchto-takoe-grpc.md","Что такое gRPC простыми словами",{"type":7,"value":8,"toc":253},"minimark",[9,13,16,21,24,28,31,34,38,41,52,56,153,157,176,180,183,186,195,203,211,215,219,222,226,229,233,236,240,243,247,250],[10,11,12],"p",{},"gRPC — это технология удаленного вызова функций: клиент вызывает метод сервиса почти как обычную функцию, а данные передаются по сети в компактном формате. Контракт методов и сообщений обычно описывается в файле Protocol Buffers.",[10,14,15],{},"Простыми словами, gRPC заранее договаривается, какие команды доступны и из каких полей состоит запрос. Это удобно для связи сервисов и для высокопроизводительных blockchain API, где важны строгие типы и потоковая передача данных.",[17,18,20],"h2",{"id":19},"grpc-это-простыми-словами","gRPC это простыми словами",[10,22,23],{},"gRPC — это протокол удалённого вызова процедур, который помогает сервисам быстро обмениваться данными. Он использует HTTP\u002F2, Protocol Buffers и часто применяется в backend-системах, микросервисах и blockchain infrastructure.",[17,25,27],{"id":26},"как-работает-grpc-протокол","Как работает gRPC-протокол",[10,29,30],{},"Разработчик описывает service, методы и message-типы в .proto-файле. Генератор создает клиентский и серверный код для выбранных языков. Во время вызова данные сериализуются, передаются по HTTP\u002F2 и преобразуются обратно в типизированный объект.",[10,32,33],{},"gRPC поддерживает обычный request\u002Fresponse, server streaming, client streaming и двунаправленный streaming. Это модель API, а не отдельный blockchain consensus protocol.",[17,35,37],{"id":36},"что-такое-protocol-buffers-и-пример-proto-файла","Что такое Protocol Buffers и пример .proto-файла",[10,39,40],{},"Protocol Buffers описывает типы сообщений и методы сервиса в строгой схеме, из которой генерируются клиентский и серверный код.",[42,43,48],"pre",{"className":44,"code":46,"language":47},[45],"language-text","syntax = \"proto3\";\n\nservice NodeService {\n  rpc GetBlock (BlockRequest) returns (BlockResponse);\n}\n\nmessage BlockRequest {\n  string hash = 1;\n}\n\nmessage BlockResponse {\n  string hash = 1;\n  int64 height = 2;\n}\n","text",[49,50,46],"code",{"__ignoreMap":51},"",[17,53,55],{"id":54},"grpc-rest-websocket-и-json-rpc-сравнение","gRPC, REST, WebSocket и JSON-RPC — сравнение",[57,58,59,81],"table",{},[60,61,62],"thead",{},[63,64,65,69,72,75,78],"tr",{},[66,67,68],"th",{},"Подход",[66,70,71],{},"Как работает",[66,73,74],{},"Где используется",[66,76,77],{},"Плюсы",[66,79,80],{},"Минусы",[82,83,84,102,119,136],"tbody",{},[63,85,86,90,93,96,99],{},[87,88,89],"td",{},"gRPC",[87,91,92],{},"Типизированные вызовы по HTTP\u002F2",[87,94,95],{},"Микросервисы, nodes, indexers",[87,97,98],{},"Компактность и streaming",[87,100,101],{},"Сложнее ручная отладка",[63,103,104,107,110,113,116],{},[87,105,106],{},"REST",[87,108,109],{},"HTTP-ресурсы и обычно JSON",[87,111,112],{},"Публичные web API",[87,114,115],{},"Простота и совместимость",[87,117,118],{},"Нет единой streaming-модели",[63,120,121,124,127,130,133],{},[87,122,123],{},"WebSocket",[87,125,126],{},"Постоянное двустороннее соединение",[87,128,129],{},"События real-time",[87,131,132],{},"Низкая задержка событий",[87,134,135],{},"Нужны reconnect и контроль состояния",[63,137,138,141,144,147,150],{},[87,139,140],{},"JSON-RPC",[87,142,143],{},"Вызов метода с параметрами в JSON",[87,145,146],{},"EVM и другие blockchain nodes",[87,148,149],{},"Прямой доступ к методам",[87,151,152],{},"Схема типов слабее",[17,154,156],{"id":155},"где-используется-grpc","Где используется gRPC",[158,159,160,164,167,170,173],"ul",{},[161,162,163],"li",{},"Связь внутренних микросервисов с единым контрактом.",[161,165,166],{},"Потоковые обновления, телеметрия и real-time события.",[161,168,169],{},"Мобильные и backend-клиенты с генерируемым SDK.",[161,171,172],{},"Высоконагруженные API с частыми небольшими сообщениями.",[161,174,175],{},"Blockchain nodes, indexers и сервисы распространения транзакций.",[17,177,179],{"id":178},"grpc-в-blockchain-infrastructure","gRPC в blockchain infrastructure",[10,181,182],{},"Некоторые blockchain-клиенты публикуют gRPC API для чтения блоков, состояния и подписок. Например, в экосистемах с Protobuf gRPC может быть нативным интерфейсом ноды, тогда как EVM-продукты чаще используют JSON-RPC.",[10,184,185],{},"Для индексатора streaming уменьшает задержку между появлением события и обработкой. Но приложение все равно должно учитывать reconnect, backpressure, пропущенные диапазоны, reorg и повторную синхронизацию после разрыва.",[10,187,188,189,194],{},"gRPC — один из протоколов доступа к нодам в современной ",[190,191,193],"a",{"href":192},"\u002Fru\u002Fblockchain-infrastructure","blockchain-инфраструктура",", наряду с JSON-RPC, REST и WebSocket.",[10,196,197,198,202],{},"Для проектов, которым нужен стабильный gRPC-доступ, Settla предлагает ",[190,199,201],{"href":200},"\u002Fru\u002Fnode-provider","аренда blockchain нод"," с поддержкой нескольких протоколов.",[10,204,205,206,210],{},"Выбор между gRPC и стандартным JSON-RPC определяется задачей — подробнее на странице ",[190,207,209],{"href":208},"\u002Fru\u002Frpc-provayder","RPC provider",".",[17,212,214],{"id":213},"плюсы-и-минусы-grpc-api","Плюсы и минусы gRPC API",[216,217,77],"h3",{"id":218},"плюсы",[10,220,221],{},"Строгий контракт, генерация SDK, компактные сообщения, четыре модели вызова и эффективный streaming.",[216,223,225],{"id":224},"ограничения","Ограничения",[10,227,228],{},"Бинарные данные сложнее смотреть вручную, browser требует адаптера, изменения схемы нужно вести совместимо.",[216,230,232],{"id":231},"когда-выбирать","Когда выбирать",[10,234,235],{},"Когда контролируются обе стороны интеграции и важны throughput, типизация или поток событий.",[216,237,239],{"id":238},"когда-rest-проще","Когда REST проще",[10,241,242],{},"Для публичного browser API, простого CRUD и интеграций, где важна минимальная сложность клиента.",[17,244,246],{"id":245},"пример-использования-grpc-простыми-словами","Пример использования gRPC простыми словами",[10,248,249],{},"Индексатор открывает streaming-метод SubscribeBlocks. Сервер отправляет новые блоки по мере появления, клиент сохраняет их и подтверждает собственный прогресс. После reconnect клиент запрашивает недостающий диапазон обычным unary-методом, чтобы не потерять данные.",[10,251,252],{},"Это надежнее наивной бесконечной подписки: поток отвечает за скорость, а контрольная синхронизация — за полноту. Такой паттерн применим к blockchain explorer, аналитике и уведомлениям.",{"title":51,"searchDepth":254,"depth":254,"links":255},2,[256,257,258,259,260,261,262,269],{"id":19,"depth":254,"text":20},{"id":26,"depth":254,"text":27},{"id":36,"depth":254,"text":37},{"id":54,"depth":254,"text":55},{"id":155,"depth":254,"text":156},{"id":178,"depth":254,"text":179},{"id":213,"depth":254,"text":214,"children":263},[264,266,267,268],{"id":218,"depth":265,"text":77},3,{"id":224,"depth":265,"text":225},{"id":231,"depth":265,"text":232},{"id":238,"depth":265,"text":239},{"id":245,"depth":254,"text":246},"2026-03-08","Что такое gRPC, как работает протокол, чем отличается от REST и зачем используется в blockchain-инфраструктуре, микросервисах и API.",false,"md",[275,278,281,284,287,290,293,296,299],{"question":276,"answer":277},"Что такое gRPC простыми словами?","Это способ вызвать функцию другого сервиса по сети по заранее описанному типизированному контракту.",{"question":279,"answer":280},"Как расшифровывается gRPC?","Официально название используется как рекурсивная аббревиатура gRPC Remote Procedure Calls.",{"question":282,"answer":283},"gRPC — это протокол?","Точнее, это RPC framework и набор соглашений поверх HTTP\u002F2, обычно с Protocol Buffers для описания и сериализации данных.",{"question":285,"answer":286},"Чем gRPC быстрее REST?","Бинарные сообщения обычно компактнее JSON, а HTTP\u002F2 эффективно мультиплексирует запросы. Реальная производительность зависит от данных и реализации.",{"question":288,"answer":289},"Работает ли gRPC в браузере?","Не как обычный fetch ко всем функциям native gRPC. Обычно используют gRPC-Web или HTTP\u002FJSON gateway.",{"question":291,"answer":292},"Что такое .proto-файл?","Это схема сервисов, методов и сообщений Protocol Buffers, из которой генерируется типизированный код.",{"question":294,"answer":295},"Зачем gRPC блокчейн-проекту?","Для нативного API поддерживаемой ноды, быстрой связи микросервисов и streaming блоков, транзакций или событий.",{"question":297,"answer":298},"Чем gRPC отличается от WebSocket?","gRPC описывает методы и сообщения сервиса и поддерживает несколько моделей вызова; WebSocket прежде всего даёт постоянный двусторонний канал.",{"question":300,"answer":301},"Использует ли gRPC HTTP\u002F2?","Да, стандартный gRPC использует возможности HTTP\u002F2, включая multiplexing и streaming.","FAQ: что такое gRPC",null,{},true,"\u002Fru\u002Fchto-takoe-grpc",{"title":5,"description":271},{"loc":306},"ru\u002Fchto-takoe-grpc",[],"oeRm2WkIM3Na86E6n9hFMzplhQUrwIioGzJ6GsfzYLE",[313,317,321,325,329,333,336,340,344,348,352,355,359,363,367],{"path":314,"title":315,"description":316},"\u002Fru\u002Fbtc-explorer","Bitcoin Explorer — проверка транзакции Bitcoin","Как проверить транзакцию Bitcoin через blockchain explorer: TxID, inputs, outputs, комиссия, mempool, блок и количество подтверждений.",{"path":318,"title":319,"description":320},"\u002Fru\u002Fblockchain-explorer","Blockchain Explorer: что это и как проверить транзакцию","Blockchain explorer для проверки транзакций, адресов, блоков и токенов в Bitcoin, Ethereum, BNB Chain, Solana, TON и Polygon.",{"path":322,"title":323,"description":324},"\u002Fru\u002Fblockchain-endpoints","Blockchain endpoints для криптопроектов","Blockchain endpoints Settla для доступа к Bitcoin, Ethereum, TON, Solana, Polygon и BNB Chain: RPC, WebSocket и API для криптопроектов.",{"path":326,"title":327,"description":328},"\u002Fru\u002Fethereum-erc20-bnb-address","Ethereum ERC20 и BNB адрес токена","Как выглядят Ethereum ERC20 и BNB\u002FBSC адреса, чем wallet address отличается от token contract address и где проверить данные через explorer.",{"path":330,"title":331,"description":332},"\u002Fru\u002Flitecoin-explorer","Litecoin Explorer: как проверить транзакцию LTC","Litecoin Explorer помогает проверить транзакцию LTC по hash: статус, подтверждения, блок, комиссию, входы и выходы. Пошаговая инструкция Settla.",{"path":208,"title":334,"description":335},"RPC-провайдер: private и shared RPC node","RPC-провайдер Settla: купить RPC node в shared или private конфигурации. JSON-RPC и WebSocket доступ к Bitcoin, Ethereum, Solana и Tron.",{"path":337,"title":338,"description":339},"\u002Fru\u002Fsolana-explorer-solscan-obzor","Solscan и Solana Explorer: как проверить транзакцию Solana","Как пользоваться Solana explorer и Solscan: signature, slot, status, programs, instructions, token accounts и проверка адреса Solana.",{"path":341,"title":342,"description":343},"\u002Fru\u002Fton-scanner-tonscan-obzor","TON Scan — обозреватель TON","Как через TON Scan и TON explorer проверять адреса, транзакции, messages и блоки сети TON. Инструкция для пользователей и разработчиков.",{"path":345,"title":346,"description":347},"\u002Fru\u002Fblockchain-api","blockchain API: управляемый доступ к блокчейн-сетям","blockchain API на Settla: SLA 99.9%, задержка \u003C50 мс, Bitcoin, Ethereum, Tron, Solana, BNB. Выделенные ноды и API.",{"path":349,"title":350,"description":351},"\u002Fru\u002Finfura-getblock-tatum-alternative","Альтернатива Infura, GetBlock и Tatum","Сравните Infura, GetBlock и Tatum с приватной blockchain-инфраструктурой Settla: лимиты, стабильность, контроль и RPC-доступ.",{"path":200,"title":353,"description":354},"Аренда blockchain нод и приватных RPC endpoints","Settla предоставляет аренду blockchain нод, приватные RPC endpoints и node hosting для криптопроектов: Bitcoin, Ethereum, TON, Solana, Polygon и BNB Chain.",{"path":356,"title":357,"description":358},"\u002Fru\u002Fkak-proverit-usdt-tranzaktsiyu","Как проверить USDT транзакцию","Как проверить USDT транзакцию по hash в сетях TRC20, ERC20 и BEP20: выбрать explorer, сверить статус, адреса, сумму и contract token.",{"path":360,"title":361,"description":362},"\u002Fru\u002Fkak-proverit-tranzaktsiyu-bitcoin","Как проверить транзакцию Bitcoin","Пошагово объясняем, как проверить транзакцию Bitcoin по transaction hash в Bitcoin Explorer, увидеть подтверждения, комиссию и адреса.",{"path":364,"title":365,"description":366},"\u002Fru\u002Fkak-proverit-tranzaktsiyu-polygon","Как проверить транзакцию Polygon","Как проверить Polygon-транзакцию по hash через Polygon explorer: статус, block confirmations, адреса, MATIC\u002FPOL, токены и contract calls.",{"path":306,"title":5,"description":271},1789558941109]