신규: Helius가 Light Protocol을 인수했습니다
Solana RPC 노드의 작동 원리
블로그/기초

Solana RPC 작동 원리

공동 창업자 겸 CEOX의 Mert MumtazLinkedIn의 Mert Mumtaz
읽는 데 3분

암호화폐에서 RPC란 무엇인가요?

전통적인 웹2 소프트웨어 개발에서는 일반적으로 API를 사용해 필요한 데이터를 가져옵니다. 결제 데이터에는 Stripe API를, SMS 데이터에는 Twilio를, 금융 데이터에는 Bloomberg를, 은행 데이터에는 Plaid를 사용하는 식입니다. 

여기서 주목할 점은 원하는 데이터가 중앙화된 주체에 의해 독점되거나 통제되는 경우가 많다는 것입니다. 

암호화폐에서 필요한 모든 데이터는 온체인에 있습니다. 누구나 별도의 허가 없이 자유롭게 조회하고 활용할 수 있습니다. 그렇다면 이 데이터를 어떻게 가져올까요? RPC를 사용하면 됩니다.

RPC는 기술적으로 원격 프로시저 호출(Remote Procedure Call)을 의미하지만, RPC 노드를 줄여 부르는 용어로도 자주 사용됩니다. RPC 노드는 블록체인 네트워크에 참여하며, 개발자가 호출할 수 있는 메서드인 원격 프로시저 호출을 제공합니다.

Solana에서 RPC는 어떻게 작동하나요?

Solana가 작동하려면 소프트웨어 클라이언트를 실행하는 분산 노드 네트워크가 필요합니다. 

이러한 노드는 검증인과 RPC라는 두 가지 유형으로 나눌 수 있습니다.

두 노드에는 한 가지 중요한 공통점이 있습니다. 모두 블록체인을 지속적으로 관찰하며 최신 데이터 또는 상태를 저장합니다.

하지만 둘 사이에는 한 가지 핵심적인 차이가 있습니다.

검증인은 투표(예: "예, 이 블록은 유효합니다")하고 합의에 참여하는 노드입니다. 

RPC는 투표하지 않으며 온체인 데이터를 다루기 위한 요청을 처리하는 노드입니다.

RPC를 호출하면 블록체인에 참여하는 노드에서 프로시저 또는 함수를 실행하게 됩니다. 이 노드는 네트워크에 참여하고 있으므로 최신 데이터를 알고 있으며, 요청 시 이를 제공할 수 있습니다.

Solana RPC 사용 방법

Solana 블록체인에서 데이터를 가져오려면 네트워크에 참여하는 RPC 노드에 JSON-RPC 요청을 보내야 합니다. 

일반적인 JSON-RPC 요청은 다음과 같습니다.

코드
curl http://localhost:8899 -X POST -H "Content-Type: application/json" -d '  { "jsonrpc": "2.0","id":1,"method":"getBlock", "params": [430, { "encoding": "json", "maxSupportedTransactionVersion":0, "transactionDetails":"full", "rewards":false } ] }

이 요청은 localhost:8899에 있는 RPC 노드에 getBlock RPC 메서드를 요청합니다. 해당 노드는 Solana 블록체인의 소프트웨어 클라이언트를 실행하고 있으므로 이 요청을 받았을 때 무엇을 해야 하는지 알고 있습니다.

실제로는 이런 방식으로 JSON-RPC 요청을 직접 다루는 경우가 거의 없습니다. 물론 원한다면 가능합니다. 대부분의 개발자는 RPC 클라이언트를 선호합니다. 가장 널리 사용되는 것은 여기에서 확인할 수 있는 Solana Web3 JS 라이브러리입니다. Solana에서 사용할 수 있는 JSON RPC 메서드 전체 목록은 문서를 확인하세요.

RPC 시작하기

RPC는 매우 중요합니다. RPC 없이는 블록체인을 사용할 수 없습니다. 이 때문에 RPC 경험을 전문적으로 개선하는 기업들이 있습니다. RPC 장비는 사용량이 매우 많으므로 높은 부하에서도 안정적으로 작동해야 합니다. 좋은 RPC 제공업체는 신뢰할 수 있고 일관된 성능을 제공하며, 최종 사용자가 시간에 따른 사용 패턴을 확인할 수 있도록 지표를 제공합니다.

Helius는 Solana 전문 엔지니어로 구성된 팀입니다. 모든 개발자에게 최상의 RPC 경험을 제공하는 것을 사명으로 삼고 있습니다.

이메일 가입이나 신용카드 없이 단 두 번의 클릭으로 여기에서 무료로 시작할 수 있습니다.

이 글은 초보자도 쉽게 이해할 수 있도록 Solana RPC를 매우 간략하게 소개했습니다. 이미 상당 부분 알고 계셨을 수도 있습니다. 다음 글에서는 RPC 최적화와 주의 사항, 더 고급 주제를 다루겠습니다. 읽어주셔서 감사합니다!

‍

Helius 구독하기

최신 Solana 개발 소식을 확인하고 새 게시물 알림을 받아보세요