Tili on Solanan perustavanlaatuinen tietoyksikkö tilan tallentamiseen. Verkko tallentaa kaiken tilan avain-arvo-varastoon, jossa jokainen avain on 32-tavuinen osoite ja jokainen arvo on tili.
Kaavio kolmesta tilistä ja niiden osoitteista. Sisältää tilin rakenteen määritelmän.
Tilin rakenne
Tiliosoitteet (julkinen avain, PDA), viisi kenttää, jotka jokainen tili sisältää, rent-tilakoneen, interaktiivisen koodiläpikäynnin kera.
Tilityypit
Ohjelma-tilit (suoritettava koodi), datatilit (ohjelman tila), järjestelmä- tilit ja sysvars (klusterin laajuinen tila).
Muokkaussäännöt
Ajonaikainen pakottaminen lamporteille, datalle, omistajalle, suoritettavalle lipulle ja lainauksille.
Tilin ajonaikainen toiminta
Tilin latauksen validointi, BPF-serialisointimuoto ja deserialisointi.
Keskeiset faktat
- Rakenne: Jokaisella tilillä on samat viisi kenttää: lamports, data, owner, executable, rent_epoch.
- Osoite: Jokainen tili tunnistetaan ainutlaatuisella 32-tavuisella osoitteella (joko Ed25519-julkinen avain tai PDA).
- Omistajuus: Vain tilin omistaja-ohjelma voi muokata sen dataa tai veloittaa lamportteja. Mikä tahansa ohjelma voi hyvittää lamportteja mille tahansa kirjoitettavalle tilille.
- Rent: Jokaisen tilin on säilytettävä vähimmäislamporttisaldo, joka on verrannollinen sen datakokoon pysyäkseen ketjussa.
Rajoitukset
| Rajoitus | Arvo | Lähde |
|---|---|---|
| Tilin datan maksimikoko | 10 MiB (10 485 760 tavua) | MAX_ACCOUNT_DATA_LEN |
| Datan maksimikasvu per käsky | 10 KiB (10 240 tavua) | MAX_PERMITTED_DATA_INCREASE |
| Datan maksimikasvu per transaktio | 20 MiB (20 971 520 tavua) | MAX_ACCOUNT_DATA_GROWTH_PER_TRANSACTION |
| Tilin tallennuksen peruskustannus | 64 tavua per tili | TRANSACTION_ACCOUNT_BASE_SIZE |
| Osoitteen koko | 32 tavua (Ed25519-julkinen avain) | -- |
| Rent-vapaa minimi (kaava) | (account_size + 128) * 3 480 lamporttia/tavu-vuosi * 2 vuotta | minimum_balance() |
Is this page helpful?