Một giao dịch bao gồm một hoặc nhiều chỉ thị, chữ ký của các tài khoản ủy quyền thay đổi và một blockhash gần đây. Mạng xử lý tất cả các chỉ thị trong một giao dịch cùng nhau. Nếu bất kỳ chỉ thị nào thất bại, toàn bộ giao dịch sẽ thất bại và tất cả thay đổi trạng thái sẽ được hoàn nguyên.
Sơ đồ đơn giản hóa hiển thị hai giao dịch
Cấu trúc giao dịch
Chữ ký, định dạng thông điệp (header, địa chỉ tài khoản, blockhash, chỉ thị đã biên dịch), mã hóa nhị phân, ngân sách kích thước và ví dụ chuyển SOL.
Giao dịch có phiên bản
Định dạng legacy so với V0, bảng tra cứu địa chỉ, phân giải ALT và so sánh phiên bản.
Quy trình xử lý giao dịch
Quy trình xử lý đầy đủ 8 giai đoạn (từ nhận đến commit), đọc chi tiết giao dịch từ mạng và tham chiếu lỗi xác thực.
Nonce bền vững
Ký ngoại tuyến với nonce bền vững, vòng đời nonce, phát hiện, quy trình xác thực và hành vi khi thất bại.
Thông tin chính
- Thực thi nguyên tử: Tất cả chỉ thị thành công hoặc tất cả đều hoàn nguyên. Phí vẫn được tính ngay cả khi thất bại.
- Giới hạn kích thước: Tối đa 1.232 byte, được tính từ MTU tối thiểu IPv6 (1.280 byte) trừ đi 48 byte cho header mạng.
- Chữ ký: Mỗi người ký cung cấp một chữ ký Ed25519 64 byte.
- Hết hạn blockhash: Blockhash gần đây của giao dịch có hiệu lực trong 150 slot.
Giới hạn
| Giới hạn | Giá trị | Nguồn |
|---|---|---|
| Kích thước giao dịch tối đa | 1.232 byte | PACKET_DATA_SIZE |
| Số tài khoản tối đa mỗi giao dịch | 64 | Giới hạn được áp dụng (128 khi increase_tx_account_lock_limit được kích hoạt, hiện chưa hoạt động) |
| Hết hạn blockhash | 150 slot | MAX_PROCESSING_AGE |
| Kích thước chữ ký | 64 byte (Ed25519) | -- |
| Phí cơ bản mỗi chữ ký | 5.000 lamport | Phí |
| Số chỉ thị thực thi tối đa | 64 (cấp cao nhất + CPI) | MAX_INSTRUCTION_TRACE_LENGTH |
| Số chữ ký tối đa mỗi gói | 12 | MAX_SIGNATURES_PER_PACKET |
Is this page helpful?