무엇이 RPC인가요?

Intermediate
3m

원격 프로시저 호출(Remote Procedure Call, RPC)은 소프트웨어 통신 기술입니다. 이를 통해 한 컴퓨터 프로그램이 다른 컴퓨터에서 실행되는 프로시저를 호출할 수 있게 해주는데, 이때 원격 컴퓨터의 세부 정보를 알 필요가 없습니다. RPC는 API(Application Programming Interface)의 한 유형입니다.

예를 들어, 쌀솥을 구입했다고 가정해봅시다. RPC를 통해 스마트폰 앱을 통해 외출 중에도 쌀솥을 원격으로 제어할 수 있어서 외출 중에도 쌀을 삶을 수 있습니다.

RPC는 요청-응답 프로토콜입니다. 호출자가 원격 컴퓨터에게 특정 매개변수로 프로시저를 실행해달라는 요청을 보내면, 실행자가 이를 실행하고 결과를 호출자에게 다시 보냅니다.

Web2에서 RPC는 원격 파일 액세스, 원격 소프트웨어 작업 관리, 원격 모니터링 프로그램 제어, 원격 오류 로깅 등에 사용될 수 있습니다.

블록체인에서, RPC는 노드가 서로 통신하거나 가상 머신과의 통신을 위한 방법으로, 각 노드는 블록체인 네트워크에서 RPC API를 통해 다른 노드에게 명령을 보내거나 데이터를 조회할 수 있습니다(상호작용을 위한 게이트 역할).

가상 머신이란 무엇인가요? EVM이란 무엇인가요? “EVM이란 무엇인가요”라는 콘텐츠를 참조해주세요.

탈중앙화 앱(DApps)의 경우, 블록체인과 상호 작용(네트워크로 데이터 읽고 쓰기 또는 스마트 계약 실행하기)을 위해서는 먼저 노드에 연결하고 네트워크와 통신해야 합니다. DApps는 어떻게 노드에 연결할 수 있을까요? 다시 말해, RPC API를 통해서입니다.

서비스 노드(서비스 제공자)

DApp 개발자가 노드와 연결하는 두 가지 옵션이 있습니다. 첫째, 노드를 직접 실행하고 해당 노드를 블록체인 네트워크와 상호 작용할 수 있게 연결합니다. 둘째, 다른 노드들과 협업하여 특히 노드 서비스 제공자의 노드를 사용합니다. 전자의 방법은 블록체인 노드를 배포하고 실행하는 것이 쉽지 않아 시간이 걸릴 수 있습니다. 그러나 노드 서비스를 사용하면 제품의 인프라 측면을 중앙화시키는 결과가 생길 수 있습니다. 따라서 DApp의 운영은 서버의 안정적 운영에 따라 달라질 수 있으며, 일부 중앙화 위험을 가질 수 있습니다.

Infura는 블록체인 관련 도구 및 인프라 제공업체입니다. 중앙 집중화되어 있으며, 2019년에 Consensys에 인수되었습니다.

Node 서비스는 Infura의 주요 제품 중 하나입니다. 블록체인 네트워크와 상호 작용할 수 있는 노드를 제공합니다.

Ethereum, Polygon, Optimism, Arbitrum, Avalanche, Near 등에 대한 노드 서비스입니다.

가장 큰 암호 화폐 핫 지갑인 MetaMask는 또한 블록체인에 액세스하기 위해 Infura의 노드 서비스를 사용하고 있습니다. 따라서 MetaMask를 사용할 때는 사실상 Infura가 제공하는 인프라 서비스를 사용하고 있는 것입니다. (MetaMask가 Consensys의 일부라는 점에 유의하십시오.)

다음 정보도 참고하실만한 것일 수 있습니다:

Web3

What else do you want to learn?

Send
delate
Use TokenInsight App All Crypto Insights Are In Your Hands
Open