ΠΠ»ΠΎΠΊΡΠ΅ΡΠ½ Π΅ ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠ²Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ° ΠΊΠΎΡΠ° Π²Π΅ΡΡΠ²Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°ΡΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³Ρ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΎΠ΄ ΡΠΎΠ²Π΅ΡΠΊΠΈΠΎΡ ΠΆΠΈΠ²ΠΎΡ. ΠΡΠ΅Π½Π΅ΡΡΠ²Π° ΡΠ΅Π°Π»Π½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈ Π²ΠΎ Π΄ΠΈΠ³ΠΈΡΠ°Π»Π½ΠΈΠΎΡ ΠΏΡΠΎΡΡΠΎΡ, ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° Π±ΡΠ·ΠΈΠ½Π° ΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ Π½Π° ΡΠΈΠ½Π°Π½ΡΠΈΡΠΊΠΈΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ, ΡΠ° Π½Π°ΠΌΠ°Π»ΡΠ²Π° Π½ΠΈΠ²Π½Π°ΡΠ° ΡΠ΅Π½Π°, Π° ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° Π²ΠΈ ΠΎΠ²ΠΎΠ·ΠΌΠΎΠΆΡΠ²Π° Π΄Π° ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ DAPP Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠΈ Π²ΠΎ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΌΡΠ΅ΠΆΠΈ.
Π‘ΠΎ ΠΎΠ³Π»Π΅Π΄ Π½Π° ΠΌΠ½ΠΎΠ³ΡΡΠ΅ ΠΏΡΠΈΠ΄ΠΎΠ±ΠΈΠ²ΠΊΠΈ ΠΈ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΈΡΠ΅ Π°ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ Π½Π° Π±Π»ΠΎΠΊΡΠ΅ΡΠ½ΠΎΡ, ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π³Π»Π΅Π΄Π° ΠΈΠ·Π½Π΅Π½Π°Π΄ΡΠ²Π°ΡΠΊΠΈ ΡΡΠΎ ΠΎΠ²Π°Π° Π²Π΅ΡΡΠ²Π°ΡΠΊΠ° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ° ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ ΡΠ΅ ΠΏΡΠΎΠ±ΠΈΠ»Π° Π²ΠΎ ΡΠ΅ΠΊΠΎΡΠ° ΠΈΠ½Π΄ΡΡΡΡΠΈΡΠ°. ΠΡΠΎΠ±Π»Π΅ΠΌΠΎΡ Π΅ ΡΡΠΎ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈΡΠ΅ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π±Π»ΠΎΠΊΡΠ΅ΡΠ½ΠΎΠ²ΠΈ Π½Π΅ΠΌΠ°Π°Ρ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΠΈΠ²ΠΎΡΡ. Ethereum ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠ²Π° ΠΎΠΊΠΎΠ»Ρ 20 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°, ΡΡΠΎ Π½Π΅ Π΅ Π΄ΠΎΠ²ΠΎΠ»Π½ΠΎ Π·Π° Π΄Π° Π³ΠΈ Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅ Π½Π° Π΄Π΅Π½Π΅ΡΠ½ΠΈΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΈ Π±ΠΈΠ·Π½ΠΈΡΠΈ. ΠΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈΡΠ΅ ΠΊΠΎΠΈ ΠΊΠΎΡΠΈΡΡΠ°Ρ Π±Π»ΠΎΠΊΡΠ΅ΡΠ½ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ° ΡΠ΅ Π΄Π²ΠΎΡΠΌΠ°Ρ Π΄Π°Π»ΠΈ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΡΡΠ°Ρ Ethereum ΠΏΠΎΡΠ°Π΄ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΠΎΡ Π²ΠΈΡΠΎΠΊ ΡΡΠ΅ΠΏΠ΅Π½ Π½Π° Π·Π°ΡΡΠΈΡΠ° ΠΎΠ΄ Ρ Π°ΠΊΠΈΡΠ°ΡΠ΅ ΠΈ Π½Π΅ΡΡΠΏΠ΅ΡΠΈ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°.
ΠΠ° Π΄Π° ΡΠ΅ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΠΈ Π΄Π΅ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡΠ°, Π±Π΅Π·Π±Π΅Π΄Π½ΠΎΡΡ ΠΈ ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΠΈΠ²ΠΎΡΡ Π²ΠΎ Π±Π»ΠΎΠΊΡΠ΅ΡΠ½ΠΎΡ, ΡΠΎ ΡΡΠΎ ΡΠ΅ ΡΠ΅ ΡΠ΅ΡΠΈ Π’ΡΠΈΠ»Π΅ΠΌΠ°ΡΠ° Π·Π° ΠΏΡΠΈΡΠΏΠΎΡΠΎΠ±Π»ΠΈΠ²ΠΎΡΡ, ΡΠΈΠΌΠΎΡ Π·Π° ΡΠ°Π·Π²ΠΎΡ
ΠΠ»ΡΡΠ½ΠΈ ΠΏΡΠΎΡΠ΅ΡΠΈ Π²ΠΎ Π³ΠΎΡΠΎΠ²ΠΈΠ½Π° Π²ΠΎ ΠΏΠ»Π°Π·ΠΌΠ°
1. ΠΠΎΡΠΈΡΠ½ΠΈΠΊΠΎΡ ΡΠ° Π½Π°ΡΠ΅ΠΊΡΠ²Π° ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° Π·Π° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ βΠ΄Π΅ΠΏΠΎΠ·ΠΈΡβ, ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΡΠΈ Π³ΠΎ Π²ΠΎ Π½Π΅Π° ΠΈΠ·Π½ΠΎΡΠΎΡ Π½Π° ETH ΡΡΠΎ ΡΠ°ΠΊΠ° Π΄Π° Π³ΠΎ Π΄Π΅ΠΏΠΎΠ½ΠΈΡΠ° Π²ΠΎ ΡΠΎΠΊΠ΅Π½ΠΎΡ Π·Π° Π³ΠΎΡΠΎΠ²ΠΈΠ½Π° Π½Π° ΠΏΠ»Π°Π·ΠΌΠ°. Π€ΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° ΠΏΠ°ΠΌΠ΅ΡΠ΅Π½ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ ΡΠΎΠ·Π΄Π°Π²Π° ΡΠΎΠΊΠ΅Π½ ΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π½Π°ΡΡΠ°Π½ Π·Π° Π½Π΅Π³ΠΎ.
2. ΠΠ°Π·Π»ΠΈΡΠ΅ Π½Π° ΠΏΠ»Π°Π·ΠΌΠ° ΠΊΠ΅Ρ ΠΏΡΠ΅ΡΠΏΠ»Π°ΡΠ΅Π½ΠΈ Π½Π° Π½Π°ΡΡΠ°Π½ΠΈ ΡΠΎ ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠΈ Π΄ΠΎΠ±ΠΈΠ²Π°Π°Ρ Π½Π°ΡΡΠ°Π½ Π·Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ Π΄Π΅ΠΏΠΎΠ·ΠΈΡ ΠΈ Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΡΠ° Π·Π° ΡΠΎΠ·Π΄Π°Π²Π°ΡΠ΅ ΡΠΎΠΊΠ΅Π½ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ.
3. ΠΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ, ΡΠΏΠ΅ΡΠΈΡΠ°Π»Π½ΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Plasma Cash Π³ΠΈ Π·Π΅ΠΌΠ°Π°Ρ ΡΠΈΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ (Π΄ΠΎ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½) ΠΈ ΡΠΎΡΠΌΠΈΡΠ°Π°Ρ Π±Π»ΠΎΠΊ ΠΎΠ΄ Π½ΠΈΠ², Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°Π°Ρ Π΄ΡΠ²ΠΎΡΠΎ ΠΠ΅ΡΠΊΠ» ΠΈ, ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½ΠΎ, Ρ Π°ΡΠΎΡ. ΠΠ²ΠΎΡ Π±Π»ΠΎΠΊ ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ° Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ°. ΠΠ°Π·Π»ΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°Π°Ρ Π΄Π°Π»ΠΈ Ρ Π°ΡΠΎΡ Π½Π° Merkle Π΅ Π²Π°Π»ΠΈΠ΄Π΅Π½ ΠΈ Π΄Π°Π»ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ ΡΠ΅ Π²Π°Π»ΠΈΠ΄Π½ΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π°Π»ΠΈ ΠΈΡΠΏΡΠ°ΡΠ°ΡΠΎΡ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ Π΅ Π½Π΅Π³ΠΎΠ²ΠΈΠΎΡ ΡΠΎΠΏΡΡΠ²Π΅Π½ΠΈΠΊ). ΠΠΎ ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π±Π»ΠΎΠΊΠΎΡ, ΡΠ°Π·ΠΎΠ»ΠΎΡ ΡΠ° ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π° ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° `submitBlock` Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ, ΡΠΎ ΡΡΠΎ ΡΠ΅ Π·Π°ΡΡΠ²ΡΠ²Π° Π±ΡΠΎΡΠΎΡ Π½Π° Π±Π»ΠΎΠΊΠΎΡ ΠΈ Ρ Π°ΡΠΎΡ Π½Π° Merkle Π²ΠΎ ΡΠΈΠ½ΡΠΈΡΠΎΡ Π½Π° ΡΠ°Π±ΠΎΠ²ΠΈΡΠ΅. ΠΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ Π³Π΅Π½Π΅ΡΠΈΡΠ° Π½Π°ΡΡΠ°Π½ ΡΡΠΎ ΡΠΊΠ°ΠΆΡΠ²Π° Π½Π° ΡΡΠΏΠ΅ΡΠ½ΠΎ Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ Π½Π° Π±Π»ΠΎΠΊ. Π’ΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ ΡΠ΅ ΠΎΡΡΡΡΠ°Π½Π΅ΡΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ.
4. ΠΠ°Π·Π»ΠΈΡΠ΅ ΡΡΠΎ Π³ΠΎ ΠΏΡΠΈΠΌΠ°Π°Ρ Π½Π°ΡΡΠ°Π½ΠΎΡ Π·Π° ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π±Π»ΠΎΠΊ ΠΏΠΎΡΠ½ΡΠ²Π°Π°Ρ Π΄Π° Π³ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ ΡΡΠΎ Π±Π΅Π° Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ Π²ΠΎ Π±Π»ΠΎΠΊΠΎΡ.
5. ΠΠΎ ΠΎΠ΄ΡΠ΅Π΄Π΅Π½ ΠΌΠΎΠΌΠ΅Π½Ρ, ΡΠΎΠΏΡΡΠ²Π΅Π½ΠΈΠΊΠΎΡ (ΠΈΠ»ΠΈ Π½Π΅-ΡΠΎΠΏΡΡΠ²Π΅Π½ΠΈΠΊΠΎΡ) Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ ΡΠ°ΠΊΠ° Π΄Π° Π³ΠΎ ΠΏΠΎΠ²Π»Π΅ΡΠ΅ ΠΎΠ΄ ΠΠ»Π°Π·ΠΌΠ° ΠΠ΅Ρ. ΠΠ° Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΎΠ²Π°, ΡΠΎΡ ΡΠ° Π½Π°ΡΠ΅ΠΊΡΠ²Π° ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° `startExit`, ΠΏΡΠ΅Π½Π΅ΡΡΠ²Π°ΡΡΠΈ Π²ΠΎ Π½Π΅Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ 2 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ, ΠΊΠΎΠΈ ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π°Π°Ρ Π΄Π΅ΠΊΠ° ΡΠΎΡ Π΅ ΡΠΎΠΏΡΡΠ²Π΅Π½ΠΈΠΊ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ. ΠΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ, ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ Π³ΠΎ Ρ Π°ΡΠΎΡ ΠΠ΅ΡΠΊΠ», Π³ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° ΠΏΡΠΈΡΡΡΡΠ²ΠΎΡΠΎ Π½Π° ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡΠ΅ ΠΈ Π³ΠΎ ΠΈΡΠΏΡΠ°ΡΠ° ΡΠΎΠΊΠ΅Π½ΠΎΡ Π·Π° ΠΏΠΎΠ²Π»Π΅ΠΊΡΠ²Π°ΡΠ΅, ΡΡΠΎ ΡΠ΅ ΡΠ΅ ΡΠ»ΡΡΠΈ Π·Π° Π΄Π²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ.
6. ΠΠΊΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠ°ΡΠ° Π·Π° ΠΏΠΎΠ²Π»Π΅ΠΊΡΠ²Π°ΡΠ΅ Π½Π° ΡΠΎΠΊΠ΅Π½ ΡΠ΅ ΡΠ»ΡΡΠΈΠ»Π° ΡΠΎ ΠΏΡΠ΅ΠΊΡΡΡΠ²Π°ΡΠ° (ΠΆΠ΅ΡΠΎΠ½ΠΎΡ Π±ΠΈΠ» ΠΏΠΎΡΡΠΎΡΠ΅Π½ ΠΎΡΠΊΠ°ΠΊΠΎ Π·Π°ΠΏΠΎΡΠ½Π°Π»Π° ΠΏΠΎΡΡΠ°ΠΏΠΊΠ°ΡΠ° Π·Π° ΠΏΠΎΠ²Π»Π΅ΠΊΡΠ²Π°ΡΠ΅ ΠΈΠ»ΠΈ ΡΠΎΠΊΠ΅Π½ΠΎΡ Π²Π΅ΡΠ΅ Π±ΠΈΠ» Π½Π° Π½Π΅ΠΊΠΎΡ Π΄ΡΡΠ³ ΠΏΡΠ΅Π΄ ΠΏΠΎΠ²Π»Π΅ΠΊΡΠ²Π°ΡΠ΅ΡΠΎ), ΡΠΎΠΏΡΡΠ²Π΅Π½ΠΈΠΊΠΎΡ Π½Π° ΡΠΎΠΊΠ΅Π½ΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π³ΠΎ ΠΏΠΎΠ±ΠΈΠ΅ ΠΏΠΎΠ²Π»Π΅ΠΊΡΠ²Π°ΡΠ΅ΡΠΎ Π²ΠΎ ΡΠΎΠΊ ΠΎΠ΄ Π΄Π²Π΅ Π½Π΅Π΄Π΅Π»ΠΈ.
ΠΡΠΈΠ²Π°ΡΠ½ΠΎΡΡΠ° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½ΡΠ²Π° Π½Π° Π΄Π²Π° Π½Π°ΡΠΈΠ½Π°
1. ΠΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ Π½Π΅ Π·Π½Π°Π΅ Π½ΠΈΡΡΠΎ Π·Π° ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ ΡΡΠΎ ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π°Ρ ΠΈ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Π°Ρ Π²ΠΎ ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΡΠΈΠ½ΡΠΈΡΠΎΡ Π·Π° Π΄Π΅ΡΠ°. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈΡΠ΅ Π·Π° ΡΠΎΠ° ΠΊΠΎΡ Π΄Π΅ΠΏΠΎΠ½ΠΈΡΠ°Π» ΠΈ ΠΏΠΎΠ²Π»Π΅ΠΊΠΎΠ» ETH ΠΎΠ΄ ΠΠ»Π°Π·ΠΌΠ° ΠΠ΅Ρ ΠΎΡΡΠ°Π½ΡΠ²Π°Π°Ρ ΡΠ°Π²Π½ΠΈ.
2. ΠΠ΅ΡΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ zk-SNARK.
Π’Π΅Ρ Π½ΠΎΠ»ΠΎΡΠΊΠΈ ΠΎΡΠ°ΠΊ
- NodeJS
- Redis
- ΠΡΠ΅ΡΠΈΡΠΌ
- ΠΠΎΡΠ²Π°
Π’Π΅ΡΡΠΈΡΠ°ΡΠ΅
ΠΠΎΠ΄Π΅ΠΊΠ° Π³ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°Π²ΠΌΠ΅ ΠΠ»Π°Π·ΠΌΠ° ΠΠ΅Ρ, ΡΠ° ΡΠ΅ΡΡΠΈΡΠ°Π²ΠΌΠ΅ Π±ΡΠ·ΠΈΠ½Π°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ ΠΈ Π³ΠΈ Π΄ΠΎΠ±ΠΈΠ²ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΠ²Π΅ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ:
- Π΄ΠΎ 35 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π° ΡΠ΅ Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ;
- ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°Π°Ρ Π΄ΠΎ 1 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ Π±Π»ΠΎΠΊ.
Π’Π΅ΡΡΠΎΠ²ΠΈΡΠ΅ Π±Π΅Π° ΠΈΠ·Π²ΡΡΠ΅Π½ΠΈ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ 3 ΡΠ΅ΡΠ²Π΅ΡΠΈ:
1. Intel Core i7-6700 Quad-Core Skylake Π²ΠΊΠ». NVMe SSD β 512 GB, 64 GB DDR4 RAM
ΠΠ΅Π° ΠΏΠΎΠ΄ΠΈΠ³Π½Π°ΡΠΈ 3 Π²Π°Π»ΠΈΠ΄Π½ΠΈ ΡΠ°Π·Π»ΠΈ Π½Π° ΠΏΠ»Π°Π·ΠΌΠ° ΠΊΠ΅Ρ.
2. AMD Ryzen 7 1700X Octa-Core βSummit Ridgeβ (Zen), SATA SSD β 500 GB, 64 GB DDR4 RAM
ΠΠ’Π₯-ΡΠ°Π·ΠΎΠ»ΠΎΡ Ropsten ΡΠ΅ΡΡ ΠΌΡΠ΅ΠΆΠ° Π±Π΅ΡΠ΅ ΠΏΠΎΠ΄ΠΈΠ³Π½Π°Ρ.
ΠΠ΅Π° ΠΏΠΎΠ΄ΠΈΠ³Π½Π°ΡΠΈ 3 Π²Π°Π»ΠΈΠ΄Π½ΠΈ ΡΠ°Π·Π»ΠΈ Π½Π° ΠΏΠ»Π°Π·ΠΌΠ° ΠΊΠ΅Ρ.
3. Intel Core i9-9900K Octa-Core Π²ΠΊΠ». NVMe SSD β 1 TB, 64 GB DDR4 RAM
ΠΠ΅ΡΠ΅ ΠΏΠΎΠ΄ΠΈΠ³Π½Π°Ρ 1 ΡΠ°Π·ΠΎΠ» Π·Π° ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΈΠ½Π° Π·Π° ΠΏΠ»Π°Π·ΠΌΠ°.
ΠΠ΅Π° ΠΏΠΎΠ΄ΠΈΠ³Π½Π°ΡΠΈ 3 Π²Π°Π»ΠΈΠ΄Π½ΠΈ ΡΠ°Π·Π»ΠΈ Π½Π° ΠΏΠ»Π°Π·ΠΌΠ° ΠΊΠ΅Ρ.
ΠΠ΅ΡΠ΅ Π»Π°Π½ΡΠΈΡΠ°Π½ ΡΠ΅ΡΡ Π·Π° Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ° Π½Π° ΠΠ»Π°Π·ΠΌΠ° ΠΠ΅Ρ.
ΠΠΊΡΠΏΠ½ΠΎ: 10 ΠΏΠ»Π°Π·ΠΌΠ° ΠΊΠ΅Ρ ΡΠ°Π·Π»ΠΈ Π²ΠΎ ΠΏΡΠΈΠ²Π°ΡΠ½Π° ΠΌΡΠ΅ΠΆΠ°.
Π’Π΅ΡΡ 1
ΠΠΌΠ° Π»ΠΈΠΌΠΈΡ ΠΎΠ΄ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΏΠΎ Π±Π»ΠΎΠΊ. ΠΠ°ΡΠΎΠ°, 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΡΠΏΠ°ΡΠ°Π°Ρ Π²ΠΎ 2 Π±Π»ΠΎΠΊΠ° (Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠΎΡ ΡΡΠΏΠ΅Π²Π° Π΄Π° Π·Π΅ΠΌΠ΅ Π΄Π΅Π» ΠΎΠ΄ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ ΠΈ Π΄Π° ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ Π΄ΠΎΠ΄Π΅ΠΊΠ° ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ).
ΠΠΎΡΠ΅ΡΠ½Π° ΡΠΎΡΡΠΎΡΠ±Π°: ΠΏΠΎΡΠ»Π΅Π΄Π΅Π½ Π±Π»ΠΎΠΊ #7; 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ ΡΠ΅ Π·Π°ΡΡΠ²Π°Π½ΠΈ Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
00:00 β ΠΏΠΎΡΠ΅ΡΠΎΠΊ Π½Π° ΡΠΊΡΠΈΠΏΡΠ° Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
01:37 - Π‘ΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ Π·Π°ΠΏΠΎΡΠ½Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΄ΠΎ ΡΠ°Π·ΠΎΠ»ΠΎΡ
01:46 β ΠΈΡΠΏΡΠ°ΡΠΈ ΡΠ°Π·ΠΎΠ» Π·Π΅Π΄Π΅ 240 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #8. ΠΠ»Π΅Π΄Π°ΠΌΠ΅ ΠΈ Π΄Π΅ΠΊΠ° 320 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΡΠ΅ Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ Π·Π° 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
01:58 β Π±Π»ΠΎΠΊΠΎΡ #8 Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π½Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
02:03 β Π±Π»ΠΎΠΊΠΎΡ #8 Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° `submitBlock` Π½Π° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ ΡΠ΅ ΠΏΠΎΠ²ΠΈΠΊΡΠ²Π° ΡΠΎ Ρ
Π°ΡΠΎΡ Π½Π° Merkle ΠΈ Π±ΡΠΎΡΠΎΡ Π½Π° Π±Π»ΠΎΠΊΠΎΡ
02:10 β Π·Π°Π²ΡΡΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠ° Π΄Π΅ΠΌΠΎ ΡΠΊΡΠΈΠΏΡΠ°, ΠΊΠΎΡΠ° ΠΈΡΠΏΡΠ°ΡΠΈ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π·Π° 32 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
02:33 - ΡΠ°Π·Π»ΠΈΡΠ΅ ΠΏΠΎΡΠ½Π°Π° Π΄Π° Π΄ΠΎΠ±ΠΈΠ²Π°Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π΄Π΅ΠΊΠ° Π±Π»ΠΎΠΊΠΎΡ #8 Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π²ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ ΠΈ ΠΏΠΎΡΠ½Π°Π° Π΄Π° Π²ΡΡΠ°Ρ 240 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
02:40 - 240 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π±Π΅Π° ΠΎΡΡΡΡΠ°Π½Π΅ΡΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ, ΠΊΠΎΠΈ ΡΠ΅ Π²Π΅ΡΠ΅ Π²ΠΎ Π±Π»ΠΎΠΊ #8
02:56 β ΠΏΠΎΠ΄Π½Π΅ΡΠΈ ΡΠ°Π·ΠΎΠ» Π³ΠΈ Π·Π΅Π΄Π΅ ΠΏΡΠ΅ΠΎΡΡΠ°Π½Π°ΡΠΈΡΠ΅ 760 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΠΏΠΎΡΠ½Π° Π΄Π° Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π° Ρ
Π°ΡΠΎΡ Π½Π° Merkle ΠΈ Π΄Π° Π³ΠΎ ΠΏΠΎΡΠΏΠΈΡΡΠ²Π° Π±Π»ΠΎΠΊΠΎΡ #9
03:20 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ 240k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
03:35 β Π±Π»ΠΎΠΊΠΎΡ #9 Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ° Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ
03:41 - ΡΠ΅ ΠΏΠΎΡΠ°Π²ΠΈ ΠΌΡΠ΅ΠΆΠ½Π° Π³ΡΠ΅ΡΠΊΠ°
04:40 β ΠΈΡΡΠ΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΡΠ΅ΠΊΠ°ΡΠ΅ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ° Π½Π° Π±Π»ΠΎΠΊ #9
04:54 β ΠΏΠΎΠ΄Π½Π΅ΡΠΈ ΡΠ°Π·ΠΎΠ» Π³ΠΈ Π·Π΅Π΄Π΅ ΠΏΡΠ΅ΠΎΡΡΠ°Π½Π°ΡΠΈΡΠ΅ 760 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΠΏΠΎΡΠ½Π° Π΄Π° Π³ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π° Ρ
Π°ΡΠΎΡ Π½Π° Merkle ΠΈ Π΄Π° Π³ΠΎ ΠΏΠΎΡΠΏΠΈΡΡΠ²Π° Π±Π»ΠΎΠΊΠΎΡ #9
05:32 β Π±Π»ΠΎΠΊΠΎΡ #9 Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ° Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ
05:53 β Π±Π»ΠΎΠΊΠΎΡ #9 Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
06:17 - ΡΠ°Π·Π»ΠΈΡΠ΅ ΠΏΠΎΡΠ½Π°Π° Π΄Π° Π΄ΠΎΠ±ΠΈΠ²Π°Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π΄Π΅ΠΊΠ° Π±Π»ΠΎΠΊΠΎΡ #9 Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π²ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ ΠΈ ΠΏΠΎΡΠ½Π° Π΄Π° Π²ΡΡΠΈ 760k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
06:47 β Π±Π°Π·Π΅Π½ΠΎΡ Π΅ ΠΈΡΡΠΈΡΡΠ΅Π½ ΠΎΠ΄ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΊΠΎΠΈ ΡΠ΅ Π²ΠΎ Π±Π»ΠΎΠΊ #9
09:06 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ 2 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
Π’Π΅ΡΡ 2
ΠΠΌΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΡΠ²Π°ΡΠ΅ ΠΎΠ΄ 350 ΠΈΠ»ΡΠ°Π΄ΠΈ ΠΏΠΎ Π±Π»ΠΎΠΊ. ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ°, ΠΈΠΌΠ°ΠΌΠ΅ 3 Π±Π»ΠΎΠΊΠ°.
ΠΠΎΡΠ΅ΡΠ½Π° ΡΠΎΡΡΠΎΡΠ±Π°: ΠΏΠΎΡΠ»Π΅Π΄Π΅Π½ Π±Π»ΠΎΠΊ #9; 2 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ ΡΠ΅ Π·Π°ΡΡΠ²Π°Π½ΠΈ Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
00:00 β Π²Π΅ΡΠ΅ Π΅ Π»Π°Π½ΡΠΈΡΠ°Π½Π° ΡΠΊΡΠΈΠΏΡΠ° Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°ΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
00:44 - Π‘ΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ Π·Π°ΠΏΠΎΡΠ½Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΄ΠΎ ΡΠ°Π·ΠΎΠ»ΠΎΡ
00:56 β ΠΈΡΠΏΡΠ°ΡΠΈ ΡΠ°Π·ΠΎΠ» Π·Π΅Π΄Π΅ 320 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #10. ΠΠ»Π΅Π΄Π°ΠΌΠ΅ ΠΈ Π΄Π΅ΠΊΠ° 320 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΡΠ΅ Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ Π·Π° 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
01:12 β Π±Π»ΠΎΠΊΠΎΡ #10 Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
01:18 β Π·Π°Π²ΡΡΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠ° Π΄Π΅ΠΌΠΎ ΡΠΊΡΠΈΠΏΡΠ°, ΠΊΠΎΡΠ° ΠΈΡΠΏΡΠ°ΡΠΈ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π·Π° 34 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
01:20 β Π±Π»ΠΎΠΊΠΎΡ #10 Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
01:51 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π΄ΠΎΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ Π΄Π΅ΠΊΠ° Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π±Π»ΠΎΠΊ #10 ΠΈ ΠΏΠΎΡΠ½ΡΠ²Π°Π°Ρ Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π°Π°Ρ 320k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
02:01 - Π±Π°Π·Π΅Π½ΠΎΡ Π΅ ΠΈΡΡΠΈΡΡΠ΅Π½ Π·Π° 320 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΊΠΎΠΈ Π±Π΅Π° Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ Π²ΠΎ Π±Π»ΠΎΠΊ #10
02:15 β ΠΈΡΠΏΡΠ°ΡΠΈ ΡΠ°Π·ΠΎΠ» Π·Π΅Π΄Π΅ 350 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #11
02:34 β Π±Π»ΠΎΠΊΠΎΡ #11 Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
02:51 β Π±Π»ΠΎΠΊΠΎΡ #11 Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
02:55 β ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΎΡ ΡΠ°Π·ΠΎΠ» Π³ΠΈ Π·Π°Π²ΡΡΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ ΠΎΠ΄ Π±Π»ΠΎΠΊΠΎΡ #10
10:59 β ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΡΠ°ΡΠ° ΡΠΎ ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ Π½Π° Π±Π»ΠΎΠΊ #9 ΡΡΠ°Π΅ΡΠ΅ ΠΌΠ½ΠΎΠ³Ρ Π΄ΠΎΠ»Π³ΠΎ Π²ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ, Π½ΠΎ Π±Π΅ΡΠ΅ Π·Π°Π²ΡΡΠ΅Π½Π° ΠΈ ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π΄ΠΎΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π·Π° ΡΠΎΠ° ΠΈ ΠΏΠΎΡΠ½Π°Π° Π΄Π° Π²ΡΡΠ°Ρ 350 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
11:05 - Π±Π°Π·Π΅Π½ΠΎΡ Π΅ ΠΈΡΡΠΈΡΡΠ΅Π½ Π·Π° 320 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΊΠΎΠΈ Π±Π΅Π° Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ Π²ΠΎ Π±Π»ΠΎΠΊ #11
12:10 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ 670 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
12:17 β ΠΈΡΠΏΡΠ°ΡΠΈ ΡΠ°Π·ΠΎΠ» Π·Π΅Π΄Π΅ 330 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #12
12:32 β Π±Π»ΠΎΠΊΠΎΡ #12 Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
12:39 β Π±Π»ΠΎΠΊΠΎΡ #12 Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
13:44 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π΄ΠΎΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ Π΄Π΅ΠΊΠ° Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π±Π»ΠΎΠΊ #12 ΠΈ ΠΏΠΎΡΠ½ΡΠ²Π°Π°Ρ Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π°Π°Ρ 330k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
14:50 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ ΡΠΎΠ΄ΡΠΆΠ°Ρ 2 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
Π’Π΅ΡΡ 3
ΠΠΎ ΠΏΡΠ²ΠΈΠΎΡ ΠΈ Π²ΡΠΎΡΠΈΠΎΡ ΡΠ΅ΡΠ²Π΅Ρ, Π΅Π΄Π΅Π½ ΡΠ°Π·ΠΎΠ» Π·Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π±Π΅ΡΠ΅ Π·Π°ΠΌΠ΅Π½Π΅Ρ ΡΠΎ ΡΠ°Π·ΠΎΠ» Π·Π° ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅.
ΠΠΎΡΠ΅ΡΠ½Π° ΡΠΎΡΡΠΎΡΠ±Π°: ΠΏΠΎΡΠ»Π΅Π΄Π΅Π½ Π±Π»ΠΎΠΊ #84; 0 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ Π·Π°ΡΡΠ²Π°Π½ΠΈ Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
00:00 β ΠΠ°Π½ΡΠΈΡΠ°Π½ΠΈ ΡΠ΅ 3 ΡΠΊΡΠΈΠΏΡΠΈ ΠΊΠΎΠΈ Π³Π΅Π½Π΅ΡΠΈΡΠ°Π°Ρ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ ΠΏΠΎ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
01:38 β Π‘ΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ Π·Π°ΠΏΠΎΡΠ½Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΄ΠΎ ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ ΡΠ°Π·ΠΎΠ» #3
01:50 β ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #3 Π·Π΅Π΄Π΅ 330k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #85 (f21). ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° 350 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΡΠ΅ Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ Π·Π° 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
01:53 β Π‘ΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ Π·Π°ΠΏΠΎΡΠ½Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΄ΠΎ ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ ΡΠ°Π·ΠΎΠ» #1
01:50 β ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #3 Π·Π΅Π΄Π΅ 330k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #85 (f21). ΠΡΡΠΎ ΡΠ°ΠΊΠ°, Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π΄Π΅ΠΊΠ° 350 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΡΠ΅ Π΄ΠΎΠ΄Π°Π²Π°Π°Ρ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ Π·Π° 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
02:01 β ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #1 Π·Π΅Π΄Π΅ 250 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #85 (65e)
02:06 β Π±Π»ΠΎΠΊΠΎΡ #85 (f21) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
02:08 β Π΄Π΅ΠΌΠΎ ΡΠΊΡΠΈΠΏΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #3, ΠΊΠΎΡ ΠΈΡΠΏΡΠ°ΡΠΈ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π·Π° 30 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ, Π·Π°Π²ΡΡΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠ°
02:14 β Π±Π»ΠΎΠΊΠΎΡ #85 (f21) Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
02:19 β Π±Π»ΠΎΠΊΠΎΡ #85 (65e) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
02:22 β Π‘ΠΎΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΡΠ΅ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ Π·Π°ΠΏΠΎΡΠ½Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ΡΠΎ Π΄ΠΎ ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ ΡΠ°Π·ΠΎΠ» #2
02:27 β Π±Π»ΠΎΠΊ #85 (65e) ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
02:29 β ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #2 Π·Π΅Π΄Π΅ 111855 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #85 (256).
02:36 β Π±Π»ΠΎΠΊΠΎΡ #85 (256) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
02:36 β Π΄Π΅ΠΌΠΎ ΡΠΊΡΠΈΠΏΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #1, ΠΊΠΎΡ ΠΈΡΠΏΡΠ°ΡΠΈ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π·Π° 42.5 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ, Π·Π°Π²ΡΡΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠ°
02:38 β Π±Π»ΠΎΠΊΠΎΡ #85 (256) Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
03:08 β Π·Π°Π²ΡΡΠΈ ΡΠΎ ΡΠ°Π±ΠΎΡΠ° ΡΠΊΡΠΈΠΏΡΠ°ΡΠ° Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #2, ΠΊΠΎΡΠ° ΠΈΡΠΏΡΠ°ΡΠΈ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π·Π° 47 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ
03:38 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π΄ΠΎΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ ΡΡΠΎ Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡΠ΅ #85 (f21), #86(65e), #87(256) Π±Π΅Π° Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ ΠΈ ΠΏΠΎΡΠ½Π°Π° Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π°Π°Ρ 330k, 250k, 111855 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ
03:49 - Π±Π°Π·Π΅Π½ΠΎΡ Π±Π΅ΡΠ΅ ΠΈΡΡΠΈΡΡΠ΅Π½ ΡΠΎ 330k, 250k, 111855 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΊΠΎΠΈ Π±Π΅Π° Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ Π²ΠΎ Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡΠ΅ #85 (f21), #86(65e), #87(256)
03:59 β ΠΏΠΎΠ΄Π½Π΅ΡΠΈ ΡΠ°Π·ΠΎΠ» #1 Π·Π΅Π΄Π΅ 888145 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #88 (214), ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #2 Π·Π΅Π΄Π΅ 750k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #88 (50a), ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #3 Π·Π΅Π΄Π΅ 670k ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #88 (d3b)
04:44 β Π±Π»ΠΎΠΊΠΎΡ #88 (d3b) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
04:58 β Π±Π»ΠΎΠΊΠΎΡ #88 (214) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
05:11 β Π±Π»ΠΎΠΊΠΎΡ #88 (50Π°) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
05:11 β Π±Π»ΠΎΠΊΠΎΡ #85 (d3b) Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
05:36 β Π±Π»ΠΎΠΊΠΎΡ #85 (214) Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
05:43 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π΄ΠΎΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ ΡΡΠΎ Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡΠ΅ #88 (d3b), #89(214) ΡΠ΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ ΠΈ ΠΏΠΎΡΠ½ΡΠ²Π°Π°Ρ Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π°Π°Ρ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ 670k, 750k
06:50 β ΠΏΠΎΡΠ°Π΄ΠΈ Π΄Π΅ΡΠ΅ΠΊΡ Π½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡΠ°ΡΠ°, Π±Π»ΠΎΠΊΠΎΡ #85 (50Π°) Π½Π΅ Π±Π΅ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½
06:55 β ΠΏΠΎΠ΄Π½Π΅ΡΠ΅ΡΠ΅ ΡΠ°Π·ΠΎΠ» #2 Π·Π΅Π΄Π΅ 888145 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ #90 (50Π°)
08:14 β Π±Π»ΠΎΠΊΠΎΡ #90 (50Π°) Π΅ ΠΏΠΎΡΠΏΠΈΡΠ°Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ Π΄ΡΡΠ³ΠΈ ΡΠ°Π·Π»ΠΈ Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ°
09:04 β Π±Π»ΠΎΠΊΠΎΡ #90 (50Π°) Π΅ ΠΏΠΎΡΠ²ΡΠ΄Π΅Π½ ΠΈ ΠΈΡΠΏΡΠ°ΡΠ΅Π½ Π΄ΠΎ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ
11:23 - ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π΄ΠΎΠ±ΠΈΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ΄ ΠΊΠΎΡΠ΅Π½ΡΠΊΠΈΠΎΡ ΡΠΈΠ½ΡΠΈΡ Π΄Π΅ΠΊΠ° Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½ Π±Π»ΠΎΠΊ #90 (50a) ΠΈ ΠΏΠΎΡΠ½ΡΠ²Π°Π°Ρ Π΄Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΠ²Π°Π°Ρ 888145 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ. ΠΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅, ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #3 Π²Π΅ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΎΠ΄ Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡΠ΅ #88 (d3b), #89(214)
12:11 - ΡΠΈΡΠ΅ Π±Π°Π·Π΅Π½ΠΈ ΡΠ΅ ΠΏΡΠ°Π·Π½ΠΈ
13:41 β ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #3 ΡΠΎΠ΄ΡΠΆΠ°Ρ 3 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
14:35 β ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #1 ΡΠΎΠ΄ΡΠΆΠ°Ρ 3 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
19:24 β ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠΎΡ #2 ΡΠΎΠ΄ΡΠΆΠ°Ρ 3 ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΈ ΡΠΎΠΊΠ΅Π½ΠΈ
ΠΡΠ΅ΡΠΊΠΈ
ΠΡΠΈ ΡΠ°Π·Π²ΠΎΡΠΎΡ Π½Π° ΠΠ»Π°Π·ΠΌΠ° ΠΠ΅Ρ Π½Π°ΠΈΠ΄ΠΎΠ²ΠΌΠ΅ Π½Π° ΡΠ»Π΅Π΄Π½ΠΈΠ²Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΊΠΎΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½ΠΎ Π³ΠΈ ΡΠ΅ΡΠ°Π²Π°Π²ΠΌΠ΅ ΠΈ Π³ΠΈ ΡΠ΅ΡΠ°Π²Π°ΠΌΠ΅:
1. ΠΠΎΠ½ΡΠ»ΠΈΠΊΡ Π²ΠΎ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ°ΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΡΠΊΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° Π·Π° Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ ΡΠ° Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅ ΠΈ ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π°ΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, ΡΡΠΎ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΏΠ°Π΄ Π½Π° Π±ΡΠ·ΠΈΠ½Π°ΡΠ°.
2. ΠΠ΅ Π±Π΅ΡΠ΅ Π²Π΅Π΄Π½Π°Ρ ΡΠ°ΡΠ½ΠΎ ΠΊΠ°ΠΊΠΎ Π΄Π° ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Ρ ΠΎΠ³ΡΠΎΠΌΠ΅Π½ Π±ΡΠΎΡ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π΄ΠΎΠ΄Π΅ΠΊΠ° ΡΠ΅ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠ°Π°Ρ ΡΡΠΎΡΠΎΡΠΈΡΠ΅ Π·Π° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
3. ΠΠ΅ Π±Π΅ΡΠ΅ ΡΠ°ΡΠ½ΠΎ ΠΊΠ°ΠΊΠΎ ΠΈ ΠΊΠ°Π΄Π΅ Π΄Π° ΡΠ΅ ΡΠΊΠ»Π°Π΄ΠΈΡΠ°Π°Ρ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π½Π°Ρ Π²ΠΈΡΠΎΠΊΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ.
4. ΠΠ΅ Π±Π΅ΡΠ΅ ΡΠ°ΡΠ½ΠΎ ΠΊΠ°ΠΊΠΎ Π΄Π° ΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° ΠΌΡΠ΅ΠΆΠ° ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈ, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π³ΠΎΠ»Π΅ΠΌΠΈΠ½Π°ΡΠ° Π½Π° Π±Π»ΠΎΠΊ ΡΠΎ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π·Π°ΡΠ°ΡΠ° ΠΎΠΊΠΎΠ»Ρ 100 MB.
5. Π Π°Π±ΠΎΡΠ΅ΡΠ΅ΡΠΎ Π²ΠΎ ΡΠ΅ΠΆΠΈΠΌ ΡΠΎ Π΅Π΄Π½Π° Π½ΠΈΡΠΊΠ° ΡΠ° ΠΏΡΠ΅ΠΊΠΈΠ½ΡΠ²Π° Π²ΡΡΠΊΠ°ΡΠ° ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ΅ ΠΊΠΎΠ³Π° ΡΠ΅ ΡΠ»ΡΡΡΠ²Π°Π°Ρ Π΄ΠΎΠ»Π³ΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠΊΠΈ (Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·Π³ΡΠ°Π΄Π±Π° Π½Π° Π΄ΡΠ²ΠΎ ΠΠ΅ΡΠΊΠ» ΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΡΠ΅ Π½Π° Π½Π΅Π³ΠΎΠ²ΠΈΠΎΡ Ρ Π°Ρ).
ΠΠ°ΠΊΠΎ ΡΠ΅ ΡΠΏΡΠ°Π²ΠΈΠ²ΠΌΠ΅ ΡΠΎ ΡΠ΅ΡΠΎ ΠΎΠ²Π°?
ΠΡΠ²Π°ΡΠ° Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° ΡΠ°Π·ΠΎΠ»ΠΎΡ Plasma Cash Π±Π΅ΡΠ΅ Π΅Π΄Π΅Π½ Π²ΠΈΠ΄ ΠΊΠΎΠΌΠ±Π°ΡΠ½ ΠΊΠΎΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈ ΡΓ¨ Π²ΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅: ΠΏΡΠΈΡΠ°ΡΠ° ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ, ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π° ΠΈ ΠΏΠΎΡΠ²ΡΠ΄ΡΠ²Π° Π±Π»ΠΎΠΊΠΎΠ²ΠΈ ΠΈ ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° API Π·Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠΈΠ΄Π΅ΡΡΠΈ NodeJS Π΅ ΠΏΡΠΈΡΠΎΠ΄Π½ΠΎ ΡΠΎ Π΅Π΄Π½Π° Π½ΠΈΡΠΊΠ°, ΡΠ΅ΡΠΊΠ°ΡΠ° ΡΡΠ½ΠΊΡΠΈΡΠ° Π·Π° ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΡΠ΅ Π½Π° Π΄ΡΠ²ΠΎΡΠΎ Merkle ΡΠ° Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡΠ°ΡΠ° Π·Π° Π΄ΠΎΠ΄Π°Π²Π°ΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΡΠ°. ΠΠΈΠ΄ΠΎΠ²ΠΌΠ΅ Π΄Π²Π΅ ΠΎΠΏΡΠΈΠΈ Π·Π° ΡΠ΅ΡΠ°Π²Π°ΡΠ΅ Π½Π° ΠΎΠ²ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ:
1. Π‘ΡΠ°ΡΡΡΠ²Π°ΡΡΠ΅ Π½Π΅ΠΊΠΎΠ»ΠΊΡ NodeJS ΠΏΡΠΎΡΠ΅ΡΠΈ, ΠΎΠ΄ ΠΊΠΎΠΈ ΡΠ΅ΠΊΠΎΡΠ° ΠΈΠ·Π²ΡΡΡΠ²Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ.
2. ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ worker_threads ΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠ΅ΡΠ΅ Π³ΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π΄Π΅Π» ΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΡ Π²ΠΎ Π½ΠΈΡΠΊΠΈ.
ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ, Π³ΠΈ ΠΊΠΎΡΠΈΡΡΠ΅Π²ΠΌΠ΅ Π΄Π²Π΅ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ: Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ²ΠΌΠ΅ Π΅Π΄Π΅Π½ ΡΠ°Π·ΠΎΠ» Π½Π° 3 Π΄Π΅Π»Π° ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΠ°Π±ΠΎΡΠ°Ρ ΠΎΠ΄Π΄Π΅Π»Π½ΠΎ, Π½ΠΎ Π²ΠΎ ΠΈΡΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΎ
1. ΠΠ°Π·ΠΎΠ» Π·Π° ΠΏΠΎΠ΄Π½Π΅ΡΡΠ²Π°ΡΠ΅, ΠΊΠΎΡ ΠΏΡΠΈΡΠ°ΡΠ° ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ Π±Π°Π·Π΅Π½ΠΎΡ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π° Π±Π»ΠΎΠΊΠΎΠ²ΠΈ.
2. ΠΠ°Π·ΠΎΠ» Π·Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡΠ° ΠΊΠΎΡ ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΠ° Π½Π° ΡΠ°Π·Π»ΠΈΡΠ΅.
3. API ΡΠ°Π·ΠΎΠ» - ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° API Π·Π° ΠΏΡΠΈΡΡΠ°ΠΏ Π΄ΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
ΠΠΎ ΠΎΠ²ΠΎΡ ΡΠ»ΡΡΠ°Ρ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠ·Π΅ΡΠ΅ ΡΠΎ ΡΠ΅ΠΊΠΎΡ ΡΠ°Π·ΠΎΠ» ΠΏΡΠ΅ΠΊΡ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ Π·Π° Unix ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ cli.
ΠΠΈ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈΠ²ΠΌΠ΅ ΡΠ΅ΡΠΊΠΈΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ Π΅ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° Π΄ΡΠ²ΠΎΡΠΎ ΠΠ΅ΡΠΊΠ», Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π½Π° Π½ΠΈΡΠΊΠ°.
Π’Π°ΠΊΠ°, ΠΏΠΎΡΡΠΈΠ³Π½Π°Π²ΠΌΠ΅ Π½ΠΎΡΠΌΠ°Π»Π½ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° Plasma Cash ΠΈΡΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½ΠΎ ΠΈ Π±Π΅Π· Π΄Π΅ΡΠ΅ΠΊΡΠΈ.
ΠΡΠΊΠ°ΠΊΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΡ Π±Π΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π΅Π½, ΠΏΠΎΡΠ½Π°Π²ΠΌΠ΅ Π΄Π° ΡΠ° ΡΠ΅ΡΡΠΈΡΠ°ΠΌΠ΅ Π±ΡΠ·ΠΈΠ½Π°ΡΠ° ΠΈ, Π·Π° ΠΆΠ°Π», Π΄ΠΎΠ±ΠΈΠ²ΠΌΠ΅ Π½Π΅Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ: 5 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π° ΠΈ Π΄ΠΎ 000 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ ΠΏΠΎ Π±Π»ΠΎΠΊ. ΠΠΎΡΠ°Π² Π΄Π° ΡΡΠ°ΡΠ°ΠΌ ΡΡΠΎ Π΅ ΡΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΎ ΠΏΠΎΠ³ΡΠ΅ΡΠ½ΠΎ.
ΠΠ° ΠΏΠΎΡΠ΅ΡΠΎΠΊ, ΠΏΠΎΡΠ½Π°Π²ΠΌΠ΅ Π΄Π° Π³ΠΎ ΡΠ΅ΡΡΠΈΡΠ°ΠΌΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΡ Π½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡΠ° ΡΠΎ Plasma Cash Π·Π° Π΄Π° ΡΠ° ΠΎΡΠΊΡΠΈΠ΅ΠΌΠ΅ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π½Π°ΡΠ° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ. ΠΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΎ Π½Π°ΠΏΠΈΡΠ°Π²ΠΌΠ΅ Π΄Π΅ΠΊΠ° ΡΠ°Π·ΠΎΠ»ΠΎΡ Plasma Cash ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡΠ²Π° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΡΡ ΡΠΎ ΡΠ½ΠΈΠΊΡ ΡΠΎΠΊΠ΅Ρ. ΠΡΠ²ΠΈΡΠ½ΠΎ Π±Π΅ΡΠ΅ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΡΠ΅ΠΊΡΡ. json ΠΎΠ±ΡΠ΅ΠΊΡΠΈ Π±Π΅Π° ΠΈΡΠΏΡΠ°ΡΠ΅Π½ΠΈ ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° `JSON.parse()` ΠΈ `JSON.stringify()`.
```json
{
"action": "sendTransaction",
"payload":{
"prevHash": "0x8a88cc4217745fd0b4eb161f6923235da10593be66b841d47da86b9cd95d93e0",
"prevBlock": 41,
"tokenId": "57570139642005649136210751546585740989890521125187435281313126554130572876445",
"newOwner": "0x200eabe5b26e547446ae5821622892291632d4f4",
"type": "pay",
"data": "",
"signature": "0xd1107d0c6df15e01e168e631a386363c72206cb75b233f8f3cf883134854967e1cd9b3306cc5c0ce58f0a7397ae9b2487501b56695fe3a3c90ec0f61c7ea4a721c"
}
}
```
ΠΠ° ΠΈΠ·ΠΌΠ΅ΡΠΈΠ²ΠΌΠ΅ Π±ΡΠ·ΠΈΠ½Π°ΡΠ° Π½Π° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΡΠ°ΠΊΠ²ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΈ ΠΈ ΠΎΡΠΊΡΠΈΠ²ΠΌΠ΅ ~ 130k Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°. Π‘Π΅ ΠΎΠ±ΠΈΠ΄ΠΎΠ²ΠΌΠ΅ Π΄Π° Π³ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΠΌΠ΅ ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° ΡΠΎ json, Π½ΠΎ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅ Π½Π΅ ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈΡΠ°. ΠΠΎΡΠΎΡΠΎΡ V8 ΠΌΠΎΡΠ° Π΄Π° Π±ΠΈΠ΄Π΅ Π΄ΠΎΠ±ΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ Π·Π° ΠΎΠ²ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
Π Π°Π±ΠΎΡΠ΅Π²ΠΌΠ΅ ΡΠΎ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ, ΡΠΎΠΊΠ΅Π½ΠΈ ΠΈ Π±Π»ΠΎΠΊΠΎΠ²ΠΈ Π½ΠΈΠ· ΠΊΠ»Π°ΡΠΈ. ΠΡΠΈ ΠΊΡΠ΅ΠΈΡΠ°ΡΠ΅ Π½Π° ΡΠ°ΠΊΠ²ΠΈ ΠΊΠ»Π°ΡΠΈ, ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅ ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈΡΠ° Π·Π° 2 ΠΏΠ°ΡΠΈ, ΡΡΠΎ ΡΠΊΠ°ΠΆΡΠ²Π° Π΄Π΅ΠΊΠ° OOP Π½Π΅ Π΅ ΠΏΠΎΠ³ΠΎΠ΄Π΅Π½ Π·Π° Π½Π°Ρ. ΠΠΎΡΠ°Π² Π΄Π° ΠΏΡΠ΅ΠΏΠΈΡΠ°ΠΌ ΡΓ¨ Π½Π° ΡΠΈΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π΅Π½ ΠΏΡΠΈΡΡΠ°ΠΏ.
Π‘Π½ΠΈΠΌΠ°ΡΠ΅ Π²ΠΎ Π±Π°Π·Π°ΡΠ° Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ
ΠΡΠ²ΠΈΡΠ½ΠΎ, Redis Π±Π΅ΡΠ΅ ΠΈΠ·Π±ΡΠ°Π½ Π·Π° ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΊΠ°ΠΊΠΎ Π΅Π΄Π½ΠΎ ΠΎΠ΄ Π½Π°ΡΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΠΈΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡΠ° ΡΡΠΎ Π³ΠΈ Π·Π°Π΄ΠΎΠ²ΠΎΠ»ΡΠ²Π° Π½Π°ΡΠΈΡΠ΅ Π±Π°ΡΠ°ΡΠ°: ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ Π½Π° Π²ΡΠ΅Π΄Π½ΠΎΡΡΠΈ Π½Π° ΠΊΠ»ΡΡΠ΅Π²ΠΈ, ΡΠ°Π±ΠΎΡΠ° ΡΠΎ ΡΠ°Π±Π΅Π»ΠΈ Π·Π° Ρ Π°Ρ, ΠΊΠΎΠΌΠΏΠ»Π΅ΡΠΈ. ΠΠΎΠ²Π΅Π΄ΠΎΠ²ΠΌΠ΅ ΡΠ΅Π΄ΠΈΠ·Π°-Π±Π΅Π½ΡΠΌΠ°ΡΠΊ ΠΈ Π΄ΠΎΠ±ΠΈΠ²ΠΌΠ΅ ~ 80 ΠΈΠ»ΡΠ°Π΄ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π° Π²ΠΎ 1 ΡΠ΅ΠΆΠΈΠΌ Π½Π° ΡΠ΅Π²ΠΊΠΎΠ²ΠΎΠ΄.
ΠΠ° Π²ΠΈΡΠΎΠΊΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ, ΠΏΠΎΡΠΈΠ½ΠΎ Π³ΠΎ Π½Π°ΠΌΠ΅ΡΡΠΈΠ²ΠΌΠ΅ Redis:
- ΠΠΎΡΠΏΠΎΡΡΠ°Π²Π΅Π½Π° Π΅ Π²ΡΡΠΊΠ° ΡΠΎ ΡΠ½ΠΈΠΊΡ ΡΠΎΠΊΠ΅Ρ.
- ΠΠΎ ΠΎΠ½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠΈΠ²ΠΌΠ΅ Π·Π°ΡΡΠ²ΡΠ²Π°ΡΠ΅ΡΠΎ Π½Π° ΡΠΎΡΡΠΎΡΠ±Π°ΡΠ° Π½Π° Π΄ΠΈΡΠΊΠΎΡ (Π·Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΡΠ°Π²ΠΈΡΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ° ΠΈ Π΄Π° Π·Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° Π΄ΠΈΡΠΊ Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π΅Π½ Redis).
ΠΠΎ Redis, Π±Π°Π·Π΅Π½ΠΎΡ Π΅ Ρ Π΅Ρ-ΡΠ°Π±Π΅Π»Π° Π·Π°ΡΠΎΠ° ΡΡΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌΠ΅ Π΄Π° Π³ΠΈ Π²ΡΠ°ΡΠΈΠΌΠ΅ ΡΠΈΡΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ Π΅Π΄Π½ΠΎ Π±Π°ΡΠ°ΡΠ΅ ΠΈ Π΄Π° Π³ΠΈ Π±ΡΠΈΡΠ΅ΠΌΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ Π΅Π΄Π½Π° ΠΏΠΎ Π΅Π΄Π½Π°. Π‘Π΅ ΠΎΠ±ΠΈΠ΄ΠΎΠ²ΠΌΠ΅ Π΄Π° ΠΊΠΎΡΠΈΡΡΠΈΠΌΠ΅ ΡΠ΅Π΄ΠΎΠ²Π½Π° Π»ΠΈΡΡΠ°, Π½ΠΎ ΡΠ°Π° Π΅ ΠΏΠΎΠ±Π°Π²Π½Π° ΠΏΡΠΈ ΡΠ°ΡΡΠΎΠ²Π°ΡΡΠ²Π°ΡΠ΅ Π½Π° ΡΠ΅Π»Π°ΡΠ° Π»ΠΈΡΡΠ°.
ΠΡΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΠ΅ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΠ΄Π½ΠΈΠΎΡ NodeJS, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ Redis ΠΏΠΎΡΡΠΈΠ³Π½Π°Π° ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ ΠΎΠ΄ 18 ΠΈΠ»ΡΠ°Π΄ΠΈ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΡΠ·ΠΈΠ½Π°ΡΠ° ΠΏΠ°Π΄Π½Π° 9 ΠΏΠ°ΡΠΈ.
ΠΠΈΠ΄Π΅ΡΡΠΈ ΡΠ΅ΠΏΠ΅ΡΠΎΡ Π½ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ° Π΄Π΅ΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ ΡΠ΅ ΡΠ°ΡΠ½ΠΎ 5 ΠΏΠ°ΡΠΈ ΠΏΠΎΠ³ΠΎΠ»Π΅ΠΌΠΈ, ΠΏΠΎΡΠ½Π°Π²ΠΌΠ΅ Π΄Π° ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°ΠΌΠ΅. ΠΠ° ΡΠΌΠ΅Π½ΠΈΠ²ΠΌΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° Π²ΠΎ ioredis ΠΈ Π΄ΠΎΠ±ΠΈΠ²ΠΌΠ΅ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ ΠΎΠ΄ 25k Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΎΠ΄Π°Π΄ΠΎΠ²ΠΌΠ΅ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π΅Π΄Π½Π° ΠΏΠΎ Π΅Π΄Π½Π° ΡΠΎ ΠΏΠΎΠΌΠΎΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° `hset`. Π’Π°ΠΊΠ°, Π³Π΅Π½Π΅ΡΠΈΡΠ°Π²ΠΌΠ΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΡΠ°ΡΠ°ΡΠ° Π²ΠΎ Π Π΅Π΄ΠΈΡ. Π‘Π΅ ΠΏΠΎΡΠ°Π²ΠΈ ΠΈΠ΄Π΅ΡΠ°ΡΠ° Π΄Π° ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π°Ρ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈΡΠ΅ Π²ΠΎ ΡΠ΅ΡΠΈΠΈ ΠΈ Π΄Π° ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Ρ ΡΠΎ Π΅Π΄Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° `hmset`. Π Π΅Π·ΡΠ»ΡΠ°ΡΠΎΡ Π΅ 32 ΠΈΠ»ΡΠ°Π΄ΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°.
ΠΠ΄ Π½Π΅ΠΊΠΎΠ»ΠΊΡ ΠΏΡΠΈΡΠΈΠ½ΠΈ, ΠΊΠΎΠΈ ΡΠ΅ Π³ΠΈ ΠΎΠΏΠΈΡΠ΅ΠΌΠ΅ ΠΏΠΎΠ΄ΠΎΠ»Ρ, ΡΠ°Π±ΠΎΡΠΈΠΌΠ΅ ΡΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΊΠΎΡΠΈΡΡΠ΅ΡΡΠΈ βBufferβ ΠΈ, ΠΊΠ°ΠΊΠΎ ΡΡΠΎ ΡΠ΅ ΠΈΡΠΏΠΎΡΡΠ°Π²ΡΠ²Π°, Π°ΠΊΠΎ Π³ΠΈ ΠΏΡΠ΅ΡΠ²ΠΎΡΠΈΡΠ΅ Π²ΠΎ ΡΠ΅ΠΊΡΡ (`buffer.toString('hex')`) ΠΏΡΠ΅Π΄ ΠΏΠΈΡΡΠ²Π°ΡΠ΅ΡΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄ΠΎΠ±ΠΈΠ΅ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈ. Π’Π°ΠΊΠ°, Π±ΡΠ·ΠΈΠ½Π°ΡΠ° Π±Π΅ΡΠ΅ Π·Π³ΠΎΠ»Π΅ΠΌΠ΅Π½Π° Π½Π° 35k Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠΎΠ², ΡΠ΅ΡΠΈΠ²ΠΌΠ΅ Π΄Π° ΡΠ° ΠΏΡΠ΅ΠΊΠΈΠ½Π΅ΠΌΠ΅ ΠΏΠΎΠ½Π°ΡΠ°ΠΌΠΎΡΠ½Π°ΡΠ° ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠ°.
ΠΠΎΡΠ°Π²ΠΌΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΡΡΠ»ΠΈΠΌΠ΅ Π½Π° Π±ΠΈΠ½Π°ΡΠ΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π°ΡΠΎΠ° ΡΡΠΎ:
1. Π‘ΠΈΡΡΠ΅ΠΌΠΎΡ ΡΠ΅ΡΡΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π° Ρ Π°ΡΠΎΠ²ΠΈ, ΠΏΠΎΡΠΏΠΈΡΠΈ ΠΈΡΠ½., Π° Π·Π° ΡΠΎΠ° ΠΌΡ ΡΠ΅ ΠΏΠΎΡΡΠ΅Π±Π½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π²ΠΎ `Buffer.
2. ΠΠΎΠ³Π° ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°Π°Ρ ΠΏΠΎΠΌΠ΅ΡΡ ΡΡΠ»ΡΠ³ΠΈΡΠ΅, Π±ΠΈΠ½Π°ΡΠ½ΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΡΠ΅ΠΆΠ°Ρ ΠΏΠΎΠΌΠ°Π»ΠΊΡ ΠΎΠ΄ ΡΠ΅ΠΊΡΡΠΎΡ. ΠΠ° ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π° ΡΠ΅ ΠΈΡΠΏΡΠ°ΡΠ° Π±Π»ΠΎΠΊ ΡΠΎ 1 ΠΌΠΈΠ»ΠΈΠΎΠ½ ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ, ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ Π²ΠΎ ΡΠ΅ΠΊΡΡΠΎΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π·Π°Π·Π΅ΠΌΠ°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΠ΄ 300 ΠΌΠ΅Π³Π°Π±Π°ΡΡΠΈ.
3. ΠΠΎΡΡΠΎΡΠ°Π½ΠΎΡΠΎ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠ°ΡΠ΅ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ Π²Π»ΠΈΡΠ°Π΅ Π½Π° ΠΏΠ΅ΡΡΠΎΡΠΌΠ°Π½ΡΠΈΡΠ΅.
ΠΠ°ΡΠΎΠ°, ΠΊΠ°ΠΊΠΎ ΠΎΡΠ½ΠΎΠ²Π° Π³ΠΎ Π·Π΅Π΄ΠΎΠ²ΠΌΠ΅ Π½Π°ΡΠΈΠΎΡ ΡΠΎΠΏΡΡΠ²Π΅Π½ Π±ΠΈΠ½Π°ΡΠ΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° ΡΠΊΠ»Π°Π΄ΠΈΡΠ°ΡΠ΅ ΠΈ ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, ΡΠ°Π·Π²ΠΈΠ΅Π½ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π°ΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° βΠ±ΠΈΠ½Π°ΡΠ½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈβ.
ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ°, Π³ΠΈ Π΄ΠΎΠ±ΠΈΠ²ΠΌΠ΅ ΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΡΡΡΠΊΡΡΡΠΈ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ:
- Π’ΡΠ°Π½ΡΠ°ΠΊΡΠΈΡΠ°
```json
{
prevHash: BD.types.buffer(20),
prevBlock: BD.types.uint24le,
tokenId: BD.types.string(null),
type: BD.types.uint8,
newOwner: BD.types.buffer(20),
dataLength: BD.types.uint24le,
data: BD.types.buffer(({current}) => current.dataLength),
signature: BD.types.buffer(65),
hash: BD.types.buffer(32),
blockNumber: BD.types.uint24le,
timestamp: BD.types.uint48le,
}
```
- Π’ΠΎΠΊΠ΅Π½
```json
{
id: BD.types.string(null),
owner: BD.types.buffer(20),
block: BD.types.uint24le,
amount: BD.types.string(null),
}
```
- ΠΠ»ΠΎΠΊΠΈΡΠ°Ρ
```json
{
number: BD.types.uint24le,
merkleRootHash: BD.types.buffer(32),
signature: BD.types.buffer(65),
countTx: BD.types.uint24le,
transactions: BD.types.array(Transaction.Protocol, ({current}) => current.countTx),
timestamp: BD.types.uint48le,
}
```
Π‘ΠΎ Π²ΠΎΠΎΠ±ΠΈΡΠ°Π΅Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ βBD.encode(block, Protocol).slice();β ΠΈ βBD.decode(buffer, Protocol)β Π³ΠΈ ΠΏΡΠ΅ΡΠ²ΠΎΡΠ°ΠΌΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅ Π²ΠΎ βBufferβ Π·Π° Π·Π°ΡΡΠ²ΡΠ²Π°ΡΠ΅ Π²ΠΎ Redis ΠΈΠ»ΠΈ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°ΡΠ΅ Π½Π° Π΄ΡΡΠ³ ΡΠ°Π·ΠΎΠ» ΠΈ ΠΏΡΠ΅Π·Π΅ΠΌΠ°ΡΠ΅ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ Π½Π°Π·Π°Π΄.
ΠΠΌΠ°ΠΌΠ΅ ΠΈ 2 Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ Π·Π° ΠΏΡΠ΅Π½ΠΎΡ Π½Π° ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠΈΡΠ΅:
β ΠΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΡΠΎ ΠΏΠ»Π°Π·ΠΌΠ° ΡΠ°Π·ΠΎΠ» ΠΏΡΠ΅ΠΊΡ ΡΠ½ΠΈΠΊΡ ΠΏΡΠΈΠΊΠ»ΡΡΠΎΠΊ
```json
{
type: BD.types.uint8,
messageId: BD.types.uint24le,
error: BD.types.uint8,
length: BD.types.uint24le,
payload: BD.types.buffer(({node}) => node.length)
}
```
ΠΊΠ°Π΄Π΅ ΡΡΠΎ:
- βΡΠΈΠΏβ. β Π΄Π΅ΡΡΡΠ²ΠΎΡΠΎ ΡΡΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΠΈΠ·Π²ΡΡΠΈ, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ, 1 β sendTransaction, 2 β getTransaction;
- `ΠΊΠΎΡΠΈΡΠ½Π° Π½ΠΎΡΠΈΠ²ΠΎΡΡ` β ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΡΡΠΎ ΡΡΠ΅Π±Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Π½Π΅ΡΠ°Ρ Π½Π° ΡΠΎΠΎΠ΄Π²Π΅ΡΠ½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΡΠ°;
- `ΠΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠ° Π½Π° ΠΏΠΎΡΠ°ΠΊΠ°` β ΠΠ Π½Π° ΠΏΠΎΡΠ°ΠΊΠ°ΡΠ° Π·Π° Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΡΠ²Π° ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠΎΡ.
β ΠΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΡΠ° ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈ
```json
{
code: BD.types.uint8,
versionProtocol: BD.types.uint24le,
seq: BD.types.uint8,
countChunk: BD.types.uint24le,
chunkNumber: BD.types.uint24le,
length: BD.types.uint24le,
payload: BD.types.buffer(({node}) => node.length)
}
```
ΠΊΠ°Π΄Π΅ ΡΡΠΎ:
- βΡΠΈΡΡΠ°β. β ΠΊΠΎΠ΄ Π·Π° ΠΏΠΎΡΠ°ΠΊΠ°, Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ 6 β PREPARE_NEW_BLOCK, 7 β BLOCK_VALID, 8 β BLOCK_COMMIT;
- βΠ²Π΅ΡΠ·ΠΈΡΠ° ΠΡΠΎΡΠΎΠΊΠΎΠ»β. β Π²Π΅ΡΠ·ΠΈΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΡ, Π±ΠΈΠ΄Π΅ΡΡΠΈ ΡΠ°Π·Π»ΠΈΡΠ΅ ΡΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²Π΅ΡΠ·ΠΈΠΈ ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΠ΅ ΠΏΠΎΠ΄ΠΈΠ³Π½Π°Ρ Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΈ ΠΌΠΎΠΆΠ°Ρ Π΄Π° ΡΠ°Π±ΠΎΡΠ°Ρ ΠΏΠΎΠΈΠ½Π°ΠΊΡ;
- `ΡΠ΅ΠΊ` β ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ Π½Π° ΠΏΠΎΡΠ°ΠΊΠ°ΡΠ°;
- `countChunk` ΠΈ βΠΡΠΎΡ Π½Π° ΠΏΠ°ΡΡΠ΅β. Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΈ Π·Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ²Π°ΡΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΠΎΡΠ°ΠΊΠΈ;
- `Π΄ΠΎΠ»ΠΆΠΈΠ½Π°` ΠΈ `ΠΊΠΎΡΠΈΡΠ½Π° Π½ΠΎΡΠΈΠ²ΠΎΡΡ` Π΄ΠΎΠ»ΠΆΠΈΠ½Π° ΠΈ ΡΠ°ΠΌΠΈΡΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
ΠΠΈΠ΄Π΅ΡΡΠΈ ΠΏΡΠ΅ΡΡ ΠΎΠ΄Π½ΠΎ Π³ΠΈ Π²ΠΏΠΈΡΠ°Π²ΠΌΠ΅ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈΡΠ΅, ΠΊΠΎΠ½Π΅ΡΠ½ΠΈΠΎΡ ΡΠΈΡΡΠ΅ΠΌ Π΅ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ±ΡΠ· ΠΎΠ΄ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° `rlp` Π½Π° Ethereum. ΠΠ° ΠΆΠ°Π», ΡΓ¨ ΡΡΡΠ΅ Π½Π΅ ΡΡΠΏΠ΅Π°Π²ΠΌΠ΅ Π΄Π° Π³ΠΎ ΠΎΠ΄Π±ΠΈΠ΅ΠΌΠ΅, Π±ΠΈΠ΄Π΅ΡΡΠΈ Π΅ Π½Π΅ΠΎΠΏΡ ΠΎΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡΠ° ΠΏΠ°ΠΌΠ΅ΡΠ½ΠΈΠΎΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ, ΡΡΠΎ ΠΏΠ»Π°Π½ΠΈΡΠ°ΠΌΠ΅ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΠΌΠ΅ Π²ΠΎ ΠΈΠ΄Π½ΠΈΠ½Π°.
ΠΠΊΠΎ ΡΡΠΏΠ΅Π΅ΠΌΠ΅ Π΄Π° ΡΠ° Π΄ΠΎΡΡΠΈΠ³Π½Π΅ΠΌΠ΅ Π±ΡΠ·ΠΈΠ½Π°ΡΠ° 35 000 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π²ΠΎ ΡΠ΅ΠΊΡΠ½Π΄Π°, ΠΈΡΡΠΎ ΡΠ°ΠΊΠ° ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈΠΌΠ΅ Π²ΠΎ ΠΎΠΏΡΠΈΠΌΠ°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅. ΠΠΈΠ΄Π΅ΡΡΠΈ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ½ΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°ΡΠ΅ Π±Π»ΠΎΠΊ ΡΡΠ°Π΅ 30 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ, ΡΡΠ΅Π±Π° Π΄Π° Π³ΠΎ Π²ΠΊΠ»ΡΡΠΈΠΌΠ΅ Π²ΠΎ Π±Π»ΠΎΠΊΠΎΡ 1 000 000 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ, ΡΡΠΎ Π·Π½Π°ΡΠΈ ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ 100 MB ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ.
ΠΡΠ²ΠΈΡΠ½ΠΎ, ΡΠ° ΠΊΠΎΡΠΈΡΡΠ΅Π²ΠΌΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° `ethereumjs-devp2p` Π·Π° Π΄Π° ΠΊΠΎΠΌΡΠ½ΠΈΡΠΈΡΠ°ΠΌΠ΅ ΠΏΠΎΠΌΠ΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ΅, Π½ΠΎ ΡΠ°Π° Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΡΠΏΡΠ°Π²ΠΈ ΡΠΎ ΡΠΎΠ»ΠΊΡ ΠΌΠ½ΠΎΠ³Ρ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ. ΠΠ°ΠΊΠΎ ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ°, ΡΠ° ΠΊΠΎΡΠΈΡΡΠ΅Π²ΠΌΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° `ws` ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π²ΠΌΠ΅ ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΏΡΠ΅ΠΊΡ Π²Π΅Π±-ΡΠΎΠΊΠ΅Ρ. Π‘Π΅ ΡΠ°Π·Π±ΠΈΡΠ°, Π½Π°ΠΈΠ΄ΠΎΠ²ΠΌΠ΅ Π½Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΈ ΠΏΡΠΈ ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΠ°ΠΊΠ΅ΡΠΈ ΡΠΎ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, Π½ΠΎ Π³ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ²ΠΌΠ΅ Π½Π° ΠΏΠ°ΡΡΠΈΡΠ° ΠΈ ΡΠ΅Π³Π° ΠΎΠ²ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π³ΠΈ Π½Π΅ΠΌΠ°.
ΠΡΡΠΎ ΡΠ°ΠΊΠ°, ΡΠΎΡΠΌΠΈΡΠ°ΡΠ΅ Π½Π° Π΄ΡΠ²ΠΎ ΠΠ΅ΡΠΊΠ» ΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΡΠ΅ Π½Π° Ρ Π°ΡΠΎΡ 1 000 000 ΡΡΠ°Π½ΡΠ°ΠΊΡΠΈΠΈ Π±Π°ΡΠ° ΠΎΠΊΠΎΠ»Ρ 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ ΠΊΠΎΠ½ΡΠΈΠ½ΡΠΈΡΠ°Π½ΠΎ ΠΏΡΠ΅ΡΠΌΠ΅ΡΡΠ²Π°ΡΠ΅. ΠΠ° ΡΠΎΠ° Π²ΡΠ΅ΠΌΠ΅, Π²ΡΡΠΊΠ°ΡΠ° ΡΠΎ ΡΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈ ΡΡΠΏΠ΅Π²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΊΠΈΠ½Π΅. ΠΠ΅ΡΠ΅ ΠΎΠ΄Π»ΡΡΠ΅Π½ΠΎ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΌΠ΅ΡΡΠΈ ΠΎΠ²Π°Π° ΠΏΡΠ΅ΡΠΌΠ΅ΡΠΊΠ° Π²ΠΎ ΠΏΠΎΡΠ΅Π±Π½Π° Π½ΠΈΡΠΊΠ°.
ΠΠ°ΠΊΠ»ΡΡΠΎΡΠΈ:
ΠΡΡΡΠ½ΠΎΡΡ, Π½Π°ΡΠΈΡΠ΅ Π½Π°ΠΎΠ΄ΠΈ Π½Π΅ ΡΠ΅ Π½ΠΎΠ²ΠΈ, Π½ΠΎ ΠΏΠΎΡΠ°Π΄ΠΈ Π½Π΅ΠΊΠΎΡΠ° ΠΏΡΠΈΡΠΈΠ½Π° ΠΌΠ½ΠΎΠ³Ρ Π΅ΠΊΡΠΏΠ΅ΡΡΠΈ Π·Π°Π±ΠΎΡΠ°Π²Π°Π°Ρ Π½Π° Π½ΠΈΠ² ΠΊΠΎΠ³Π° ΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°Π°Ρ.
- ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ΡΠΎ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°ΡΠ΅ Π½Π°ΠΌΠ΅ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠ°Π½ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°ΡΠ΅ ΡΠ° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π½ΠΎΡΡΠ°.
- ΠΠΎΠ½ΠΎΠ»ΠΈΡΠΎΡ Π΅ ΠΏΠΎΠ»ΠΎΡ ΠΎΠ΄ ΡΠ΅ΡΠ²ΠΈΡΠ½Π°ΡΠ° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Π·Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈΠ²Π΅Π½ NodeJS ΡΠΈΡΡΠ΅ΠΌ.
- ΠΠΎΡΠΈΡΡΠ΅ΡΠ΅ΡΠΎ Π½Π° `worker_threads` Π·Π° ΡΠ΅ΡΠΊΠΈ ΠΏΡΠ΅ΡΠΌΠ΅ΡΠΊΠΈ ΡΠ° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΎΠ΄Π³ΠΎΠ²ΠΎΡΠ½ΠΎΡΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΎΡ, ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΠΊΠΎΠ³Π° ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ ΡΠΎ i/o ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
- Unix ΡΠΎΠΊΠ΅ΡΠΎΡ Π΅ ΠΏΠΎΡΡΠ°Π±ΠΈΠ»Π΅Π½ ΠΈ ΠΏΠΎΠ±ΡΠ· ΠΎΠ΄ Π±Π°ΡΠ°ΡΠ°ΡΠ° http.
- ΠΠΊΠΎ ΡΡΠ΅Π±Π° Π±ΡΠ·ΠΎ Π΄Π° ΠΏΡΠ΅ΡΡΠ»ΠΈΡΠ΅ Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ ΠΏΡΠ΅ΠΊΡ ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΠΏΠΎΠ΄ΠΎΠ±ΡΠΎ Π΅ Π΄Π° ΠΊΠΎΡΠΈΡΡΠΈΡΠ΅ Π²Π΅Π±-ΡΠΎΠΊΠ΅ΡΠΈ ΠΈ Π΄Π° ΠΈΡΠΏΡΠ°ΡΠ°ΡΠ΅ Π±ΠΈΠ½Π°ΡΠ½ΠΈ ΠΏΠΎΠ΄Π°ΡΠΎΡΠΈ, ΠΏΠΎΠ΄Π΅Π»Π΅Π½ΠΈ Π½Π° ΠΏΠ°ΡΡΠΈΡΠ°, ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠ΅ΠΏΡΠ°ΡΠ°Ρ Π΄ΠΎΠΊΠΎΠ»ΠΊΡ Π½Π΅ ΠΏΡΠΈΡΡΠΈΠ³Π½Π°Ρ, Π° ΠΏΠΎΡΠΎΠ° Π΄Π° ΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π°Ρ Π²ΠΎ Π΅Π΄Π½Π° ΠΏΠΎΡΠ°ΠΊΠ°.
ΠΠ΅ ΠΏΠΎΠΊΠ°Π½ΡΠ²Π°ΠΌΠ΅ Π΄Π° ΡΠ° ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅ GitHub ΠΏΡΠΎΠ΅ΠΊΡ:
ΠΠ°ΠΏΠΈΡΠΎΡ Π±Π΅ΡΠ΅ ΠΊΠΎ-Π½Π°ΠΏΠΈΡΠ°Π½ ΠΎΠ΄ ΠΠ»Π΅ΠΊΡΠ°Π½Π΄Π°Ρ ΠΠ°ΡΠΈΠ²Π°Π½, ΠΏΠΎΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ΅Ρ
ΠΠ·Π²ΠΎΡ: www.habr.com