관리자 권한으로 sui cli 설치
choco install sui -y
sui 네트워크에 연결
sui client
활성화된 주소 확인
sui client active-address
기본적으로 enter 만 누르면 sui test server 에 연결된다.
어떤 네트워크에 연결된건지 확인
sui client envs
새로운 지갑 생성
sui client new-address ed25519
다른 지갑 활성화
sui client switch --address <변경할-지갑-주소>
네트워크 변경
sui client switch --env devnet
sui 토큰 받기
테스트 네트워크에서는 무료로 받을 수 있음
sui client faucet
만약 위 명령어가 작동하지 않으면, 직접 웹에서 받을 수도 있음:
👉Sui Faucet 접속 → 지갑 주소 입력 후 토큰 요청
특정 주소에 토큰 보내기
sui client faucet --address <YOUR_SUI_ADDRESS>
typescript SDK 를 이용하여 애플리케이션에서 토큰 요청
import { getFaucetHost, requestSuiFromFaucetV0 } from '@mysten/sui/faucet';
// Devnet Faucet 서버에서 SUI 요청
await requestSuiFromFaucetV0({
host: getFaucetHost('devnet'),
recipient: '<YOUR_SUI_ADDRESS>',
});
SUI 보내기
sui client transfer-sui --to <주소> --amount <SUI>
스마트 컨트랙트 배포
sui client publish --gas-budget 20000000
1. JSON-RPC API 사용 (Sui Full Node 연결)
JSON-RPC는 Sui의 Full Node에서 데이터를 가져올 수 있는 API 방식의 인터페이스
JSON-RPC에서 조회 가능한 데이터
✔ 실시간 트랜잭션(Transaction) 데이터
✔ 과거 트랜잭션(History) 조회
✔ 객체(Object) 정보 조회
✔ 체크포인트(Checkpoint) 조회
✔ 이벤트(Event) 구독 및 분석
Mainnet: https://fullnode.mainnet.sui.io
Testnet: https://fullnode.testnet.sui.io
Devnet: https://fullnode.devnet.sui.io
-> 해당 URL을 사용하여 JSON-RPC 요청을 보내면 Sui 네트워크 데이터를 조회 가능.
curl -X POST https://fullnode.mainnet.sui.io \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "sui_getTransaction",
"params": ["<TRANSACTION_HASH>"]
}'
2. 커스텀 데이터 인덱서(Indexer) 구축 (PostgreSQL DB 활용)
커스텀 인덱서는 Sui 블록체인의 데이터를 주기적으로 가져와서 PostgreSQL 같은 DB에 저장하는 시스템
✅ 커스텀 인덱서의 역할
Sui 블록체인 데이터를 지속적으로 수집하여 데이터베이스에 저장.
데이터를 구조화해서 보관하여 빠른 검색 가능.
JSON-RPC API보다 빠르게 데이터 조회 가능.
✅ 커스텀 인덱서의 핵심 기능
JSON-RPC API를 이용해서 Sui 블록체인 데이터를 주기적으로 가져와 PostgreSQL 같은 DB에 저장.
이후, JSON-RPC를 사용하지 않고 데이터베이스에서 직접 검색하여 빠르게 조회 가능.
블록체인 데이터를 원하는 기간만큼 보존 가능하여, 오래된 데이터도 조회 가능.