인스트럭션은 Solana 프로그램에서 특정 함수를 실행하도록 요청하는 것입니다. 인스트럭션은 온체인 작업의 기본 구성 요소입니다. 각 인스트럭션은 호출할 프로그램 하나를 정확히 지정하고, 필요한 계정들과 프로그램이 해석하는 바이트 배열 데이터(일반적으로 실행할 인스트럭션 핸들러를 식별하는 구분자와 직렬화된 인수들)를 명시합니다. 각 인스트럭션의 실행 로직은 프로그램에 저장되며, 각 프로그램은 자체 인스트럭션 세트를 정의합니다. Solana 네트워크와 상호작용하려면 하나 이상의 인스트럭션을 트랜잭션에 추가하여 네트워크로 전송하고 처리되도록 합니다.
인스트럭션과 그 3가지 구성 요소로 분해된 트랜잭션을 나타내는 다이어그램
인스트럭션 구조
인스트럭션의 세 가지 필드(program_id, accounts, data), AccountMeta, 컴파일된 인스트럭션 및 SOL 전송 예제.
인스트럭션 인트로스펙션
프로그램이 Instructions sysvar를 통해 현재 트랜잭션의 형제 인스트럭션을 검사하는 방법.
주요 사항
- 단일 프로그램: 각 인스트럭션은
program_id를 통해 정확히 하나의 프로그램을 대상으로 합니다. - 계정 메타데이터:
accounts배열은 인스트럭션이 읽거나 쓰는 모든 계정에 대한AccountMeta를 제공합니다. - 불투명 데이터:
data필드는 대상 프로그램에 의해 형식이 정의되는 바이트 배열입니다.
Is this page helpful?