원자적 컴포저빌리티
프로그램은 하나의 트랜잭션 안에서 cross-program invocation을 통해 서로를 호출합니다. 어느 단계든 실패하면 전체 트랜잭션이 되돌려지므로, 멀티 프로토콜 전략이 중간 상태로 정산되는 일은 없습니다.
DeFi 개발자
모든 솔라나 프로그램은 동일한 상태를 읽고 쓰기 때문에 스왑, 대출 상환, 오라클 업데이트를 하나의 원자적 트랜잭션으로 실행할 수 있습니다. 작동하는 Anchor 앱에서 시작해 실시간 유동성을 통합하고, 프로덕션 수준의 방식으로 배포하세요.
npx -y create-solana-dapp@latest -t solana-foundation/templates/kit/nextjs-anchor솔라나를 선택하는 이유
프로그램은 하나의 트랜잭션 안에서 cross-program invocation을 통해 서로를 호출합니다. 어느 단계든 실패하면 전체 트랜잭션이 되돌려지므로, 멀티 프로토콜 전략이 중간 상태로 정산되는 일은 없습니다.
각 트랜잭션은 읽고 쓸 계정을 미리 선언합니다. 런타임은 쓰기 가능한 동일 계정을 건드리지 않는 트랜잭션을 병렬로 실행하므로, 하나의 혼잡한 마켓이 관련 없는 다른 마켓을 지연시키지 않습니다.
경합이 발생한 계정에 쓰는 트랜잭션들은 해당 계정이 차지하는 블록 몫을 두고 경쟁합니다. 네트워크 전체 평균이 아니라, 내가 쓰는 계정을 기준으로 우선순위 수수료를 책정하세요.
메인넷의 slot 시간은 단계적으로 단축되고 있으며, Alpenglow가 현재의 투표 및 파이널리티 프로토콜을 대체할 예정입니다. 견적 만료 시간, 타임아웃, 청산 시간 창을 조정하기 전에 두 가지를 모두 확인하세요.
개발자 스택
새 프로토콜을 위한 기본 경로입니다. 프로그램에는 Anchor, 테스트에는 LiteSVM과 Surfpool, 클라이언트에는 Codama, 앱에는 Kit를 사용합니다.
01프로그램 작성
대부분의 프로그램에는 Anchor를 권장합니다. 계정 검증, IDL 생성, CPI 헬퍼가 기본으로 내장되어 있습니다. 컴퓨트 유닛 하나하나가 중요한 핫 패스에서는 의존성이 없는 라이브러리인 Pinocchio를 사용하세요.
02테스트
LiteSVM 또는 Mollusk로 빠른 인프로세스 테스트를 실행하세요. 그런 다음 메인넷 계정을 필요할 때 불러오는 로컬 네트워크인 Surfpool에서 통합 테스트를 실행하면, 실제 풀과 오라클을 대상으로 테스트할 수 있습니다.
03클라이언트 생성
프로그램의 IDL로부터 타입이 지정된 TypeScript 및 Rust 클라이언트를 생성하면, 인스트럭션 빌더와 계정 디코더가 배포할 때마다 항상 최신 상태로 유지됩니다.
04앱 빌드
@solana/kit은 표준 JavaScript SDK입니다. 지갑 플러그인이 Wallet Standard를 통해 설치된 지갑을 찾아주므로, 지갑별 어댑터 패키지가 필요 없습니다.
빌딩 블록
이 프로토콜들은 자사 프로그램과 API에 대한 개발자 문서를 공개하고 있습니다. 사용자 자금을 프로토콜을 통해 라우팅하기 전에 각 프로토콜의 문서와 감사 보고서를 읽어보세요.
애그리게이터 API로 솔라나 유동성 전반에 스왑을 라우팅하거나, 원시 인스트럭션을 요청해 자체 트랜잭션 안에 스왑을 구성하세요.
풀을 생성하고, 집중 유동성을 공급하며, 온체인 AMM에서 직접 가격을 조회하세요.
대출 마켓 SDK를 통해 담보를 예치하고, 차입하고, 리저브 상태를 조회하세요.
레버리지 포지션을 열고, 관리하고, 청산하거나, 완전한 온체인 무기한 선물 마켓을 직접 설계하세요.
서명된 가격 업데이트를 트랜잭션에 가져오고, 가격을 사용하기 전에 신뢰도와 최신성을 확인하세요.
리퀴드 스테이킹 토큰을 담보로 받거나, SOL을 validator 보상을 얻는 스테이크 풀로 라우팅하세요.
솔라나에서 네이티브로 발행되는 법정화폐 기반 스테이블코인으로 정산하세요.
Circle의 CCTP로 USDC를 네이티브로 이동하거나, 다른 자산과 메시지를 체인 간에 브리지하세요.
프로토콜이 반드시 처리해야 하는 내장 동작이 포함된 자산을 발행하세요. 전송 훅, 이자 발생 잔액, 스케일된 UI 금액, 기밀 전송 등이 있습니다.
예시일 뿐이며, 프로토콜이 목록에 포함되었다고 해서 솔라나 재단이 보증하는 것은 아닙니다.
트랜잭션 전달
DeFi 트래픽은 변동성이 클 때, 즉 사용자가 트랜잭션이 처리되기를 가장 절실히 원할 때 정점에 달합니다. 메인넷 출시 전에 클라이언트에 다음 사항을 반영하세요.
시뮬레이션으로 컴퓨트 유닛을 측정하고, 한도를 빠듯하게 설정하고, 내가 쓰는 계정의 최근 수수료를 기준으로 우선순위 수수료를 책정하세요.
v1 트랜잭션은 크기 제한을 늘려주고, 주소 룩업 테이블은 긴 계정 목록을 압축합니다. 복잡한 경로에서는 각각 트레이드오프가 따릅니다.
스테이크 가중 QoS는 스테이킹된 validator가 전달하는 트랜잭션을 위해 리더의 처리 용량을 확보해 둡니다. 이를 지원하는 RPC 제공업체를 선택하세요.
보안
DeFi 프로그램은 첫 배포 시점부터 사용자 자금을 보유할 수 있습니다. 누가 프로그램을 변경할 수 있는지 통제하고, 배포된 내용을 증명하고, 프로그램의 동작을 지켜보세요.
프로그램 업그레이드 및 관리자 권한을 Squads 멀티시그에 보관하고, 변경 사항에는 타임락을 적용하세요.
사용자와 통합 개발자가 배포된 프로그램이 공개된 소스와 일치하는지 확인할 수 있게 하세요.
메인넷 출시 전에 독립적인 감사를 받고 버그 바운티를 운영하세요. 솔라나 재단은 에코시스템 팀을 위해 STRIDE 보안 평가와 무료 도구를 지원합니다.
Microscope는 프로그램의 인스트럭션과 Squads 제안을 디코딩하여 자체 호스팅 대시보드와 알림으로 제공합니다.
기술적인 질문을 하고, 설계를 검토받고, 함께 빌드할 팀을 찾아보세요.