RSS DEV 커뮤니티
팔로우
계정은 단순한 저장소가 아닙니다. 솔라나가 빠른 이유 중 하나입니다.
Solana는 멤풀 없이 높은 속도를 위해 병렬 실행을 가능하게 하는 블록 단위로 트랜잭션을 처리합니다. 계정은 데이터를 저장하고 프로그램은 스마트 계약과 유사하게 실행 가능한 코드를 포함합니다. Solana에는 각각 고유한 기능을 수행하는 여러 계정 유형이 있습니다. 예를 들어, 시스템 프로그램은 모든 1로 구성된 고정 소유자 주소를 사용합니다. Solana의 계정 주소는 공개 키(개인 키로 보호됨) 또는 프로그램 파생 주소(PDA)입니다. PDA는 특정 시드와 프로그램 ID를 사용하여 프로그램에 의해 결정론적으로 생성됩니다. 이러한 PDA는 프로그램이 소유하며 스마트 계약이 관리하는 보안 금고와 유사하게 작동합니다. 공개 키를 가진 사용자 계정은 PDA에 대해 소유자 역할을 합니다. Solana는 효율적인 트랜잭션 처리를 위해 동적 병렬 계정 잠금을 사용합니다. 트랜잭션은 검증자 엔진에 모든 관련 계정을 사전에 선언해야 합니다. 이 시스템은 이중 지불을 방지하기 위해 읽기 잠금(Read-Locks)과 쓰기 잠금(Write-Locks)을 사용합니다. 중요한 것은 이 잠금 메커니즘을 통해 관련 없는 계정을 동시에 처리할 수 있어 네트워크 병목 현상을 방지한다는 것입니다.