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
Tilin osoitteet (julkinen avain, PDA), viisi kenttää, jotka jokaisella tilillä on, tallennussaldo sekä vanhentunut rent-kenttä, interaktiivisen koodikatsauksen 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 yksilöllisellä 32-tavun 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.
- Tallennuskapasiteetti: Jokaisen tilin on pidettävä vähimmäissaldo palautettavissa olevina lamport-yksiköinä, joka on suhteessa sen tietomäärään, jotta tili pysyy verkossa.
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) | -- |
| Vähimmäistallennussaldo (kaava) | (account_size + 128) * 3 480 lamporttia/tavu-vuosi * 2 vuotta | minimum_balance() |
Is this page helpful?