RPC Remote Procedure Call?
- 경량 소프트웨어 커뮤니케이션 프로토콜
- 클라이언트가 다른 네트워크 상에 있는 서버랑 커뮤니케이션 할 수 있도록 함
예) 로컬 컴퓨터에서 리모트 서버에 request 할 때, RPC 콜 사용
- 블록체인에선 dApp이 클라이언트고 서버가 RPC노드라고 볼 수 있음
그렇다면 RPC노드가 무엇이냐?
-디앱 돌리고 있는 컴퓨터! 이더리움으로 치면 두 인프라레이어*(execution layer and consensus layer)돌리는 서버 다 노드라고 봄
-이더리움: 라이트노드 풀노드 아카이발노드
- 솔라나: 벨리데이터 노드 / RPC노드
솔라나의 노드를 더 자세히 보면
- validator node: 컨센서스 프로토콜 돌리기 가눙ㅇㅇ 리워즈 배당 가눙 ㅇㅇ
- RPC node: 걍 HTTP(웹)에서 오는 데이터 리퀘스트 받아서 맞는 블록체인 데이터 내어주는 문 같은 노드. RPC엔드포인트라고도 함
솔라나 RPC node(=end point)의 종류
- 퍼블릭
ㄴ공개됨 누구나 리퀘스트가눙 / 어떤 플젝이나 회사가 뒷바침하는게 아님 그냥 공개된 블록체인 데이터 가진 노드
- 프라이빗
ㄴ특정 디앱 전용 엔드포인트
ㄴ프라이빗 노드 제공하는 싸스 회사들이 알케미같은 곳
- 앨터네이티브
ㄴ프라이머리 rpc endpoint가 잘 안돌아갈 때 대비하여 갖춰놓는 대비용 엔드포인트
ㄴsingle point of failure방지
The JSON-RPC Protocol
- 클라이언트(디앱)에서 유저가 액션을 하면 JSON-RPC 콜으로 필요 정보를 가져옴
- 걍 웹에서 블록체인 데이터를 가져오는 리퀘스트 콜이라고 보면 됨
솔로나 개발할 때 RPC노드 구축 옵션
1) 노드 프로바이더 서비스를 이용한다
2) 셀프로 호스팅한다
3) 퍼블릭 rpc 타고 요청한다 (사용이 간단하고 뜸할 경우 가능)
1) 의 경우 Alchemy, Syndica, Quicknode, Triton 등이 있음
https://www.syndica.io/product
Product - Syndica
Syndica product
syndica.io
'Solana 솔라나 개발' 카테고리의 다른 글
솔라나 개발 (해커톤준비) 2 솔라나 폰 solana phone 기능 (0) | 2023.02.05 |
---|