ΠΠ΄ΡΠ°Π²Π΅ΠΉΡΠ΅, ΡΠ°Π±ΠΎΡΡ Π² Π΅ΠΊΠΈΠΏΠ° Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° DRD KP (ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ΅Π³ΠΈΡΡΡΡ Π½Π° Π΄Π°Π½Π½ΠΈ Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π½Π° ΠΆΠΈΠ·Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΡΠ» Π½Π° ΠΊΠΎΠ»ΠΎΠΎΡΠΈΡΠ΅). Π’ΡΠΊ Π±ΠΈΡ
ΠΈΡΠΊΠ°Π» Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΠΎΠΏΠΈΡΠ° Π½Π° Π½Π°ΡΠΈΡ Π΅ΠΊΠΈΠΏ Π² ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π΅Π½ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½ Π·Π° ΡΠΎΠ·ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΡΠ° Π½Π° ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡΠ΅. Π ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ°ΡΠ° ΡΠΈ ΡΠ°ΡΡ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΡ Π·Π° Hyperledger Fabric, Π½ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡ, ΠΎΠΏΠΈΡΠ°Π½ ΡΡΠΊ, ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π΅ΠΊΡΡΡΠ°ΠΏΠΎΠ»ΠΈΡΠ°Π½ ΠΊΡΠΌ Π²ΡΠ΅ΠΊΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½. ΠΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ΅Π» Π½Π° Π½Π°ΡΠ΅ΡΠΎ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½Π΅ Π΅ Π΄Π° ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΠΈΠΌ ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΈ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½, ΡΠ΅ ΠΊΡΠ°ΠΉΠ½ΠΈΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡ Π΄Π° Π΅ ΠΏΡΠΈΡΡΠ΅Π½ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΈ Π΄Π° Π½Π΅ Π΅ ΡΠ²ΡΡΠ΄Π΅ ΡΡΡΠ΄Π΅Π½ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°.
Π’ΡΠΊ Π½ΡΠΌΠ° Π΄Π° ΠΈΠΌΠ° ΠΎΡΠΊΡΠΈΡΠΈΡ, Π½Π΅ΠΎΡΠ°ΠΊΠ²Π°Π½ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ½ΠΈΠΊΠ°Π»Π½ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ (Π·Π°ΡΠΎΡΠΎ Π³ΠΈ Π½ΡΠΌΠ°ΠΌ). ΠΡΠΎΡΡΠΎ ΠΈΡΠΊΠ°ΠΌ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ ΡΠ²ΠΎΡ ΡΠΊΡΠΎΠΌΠ΅Π½ ΠΎΠΏΠΈΡ, Π΄Π° ΠΏΠΎΠΊΠ°ΠΆΠ°, ΡΠ΅ βΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎβ ΠΈ ΠΌΠΎΠΆΠ΅ Π±ΠΈ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ° Π·Π° ΠΎΠΏΠΈΡΠ° Π½Π° Π½ΡΠΊΠΎΠΉ Π΄ΡΡΠ³ Π²ΡΠ² Π²Π·Π΅ΠΌΠ°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΎΠ±ΡΠΈ ΠΈ Π½Π΅ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π΄ΠΎΠ±ΡΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
ΠΡΠΎΠ±Π»Π΅ΠΌ: Π±Π»ΠΎΠΊΠΎΠ²ΠΈΡΠ΅ Π²Π΅ΡΠΈΠ³ΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Ρ
ΠΠ½Π΅Ρ ΡΡΠΈΠ»ΠΈΡΡΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ ΡΠ° Π½Π°ΡΠΎΡΠ΅Π½ΠΈ ΠΊΡΠΌ ΠΏΡΠ΅Π²ΡΡΡΠ°Π½Π΅ΡΠΎ Π½Π° Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½Π° Π² Π½Π°ΠΈΡΡΠΈΠ½Π° ΡΠ΄ΠΎΠ±Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ, Π° Π½Π΅ Π² ΡΠΈΠΊΡΠ°ΠΊΠ°ΡΠ° Π±ΠΎΠΌΠ±Π° ΡΡΡ Π·Π°ΠΊΡΡΠ½ΠΈΡΠ΅Π» Π² ΠΊΡΠ°ΡΠΈΠ²Π° ΠΎΠ±Π²ΠΈΠ²ΠΊΠ°. ΠΡΡΠΆΠ°Π²Π½ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ, ΠΎΠΏΡΠΈΠΌΠΈΡΡΠΈΡΠ΅Π½ ΡΠ±ΠΎΡ, ΠΏΠ»Π°Π·ΠΌΠ° ΠΈ ΡΠ°ΡΠ΄ΠΈΠ½Π³ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ°Π½Π°Ρ ΠΎΠ±ΠΈΡΠ°ΠΉΠ½ΠΈ. ΠΡΠΊΠΎΠΉ Π΄Π΅Π½. ΠΠ»ΠΈ ΠΌΠΎΠΆΠ΅ Π±ΠΈ TON ΠΎΡΠ½ΠΎΠ²ΠΎ ΡΠ΅ ΠΎΡΠ»ΠΎΠΆΠΈ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Ρ ΡΠ΅ΡΡ ΠΌΠ΅ΡΠ΅ΡΠ° ΠΈ ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ° Plasma Group ΡΠ΅ ΠΏΡΠ΅ΡΡΠ°Π½Π΅ Π΄Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°. ΠΠΎΠΆΠ΅ΠΌ Π΄Π° Π²ΡΡΠ²Π°ΠΌΠ΅ Π² Π΄ΡΡΠ³Π° ΠΏΡΡΠ½Π° ΠΊΠ°ΡΡΠ° ΠΈ Π΄Π° ΡΠ΅ΡΠ΅ΠΌ Π±ΡΠΈΠ»ΡΠ½ΡΠ½ΠΈ Π±Π΅Π»ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΡΠ΅Π· Π½ΠΎΡΡΠ°, Π½ΠΎ ΡΡΠΊ ΠΈ ΡΠ΅Π³Π° ΡΡΡΠ±Π²Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ Π½Π΅ΡΠΎ Ρ ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠΌΠ°ΠΌΠ΅. Π‘Π²ΡΡΡΠΈ Π³Π»ΡΠΏΠΎΡΡΠΈΡΠ΅.
ΠΠ°Π΄Π°ΡΠ°ΡΠ°, Π²ΡΠ·Π»ΠΎΠΆΠ΅Π½Π° Π½Π° Π½Π°ΡΠΈΡ Π΅ΠΊΠΈΠΏ Π² Π½Π°ΡΡΠΎΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° Π½Π°ΠΉ-ΠΎΠ±ΡΠΎ ΡΠ°ΠΊΠ°: ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ±Π΅ΠΊΡΠΈ, Π΄ΠΎΡΡΠΈΠ³Π°ΡΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Ρ ΠΈΠ»ΡΠ΄ΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΠΈΡΠΊΠ°Ρ Π΄Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Ρ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ Π½Π° Π΄ΠΎΠ²Π΅ΡΠΈΠ΅; Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΅ Π΄Π° ΡΠ΅ ΠΈΠ·Π³ΡΠ°Π΄ΠΈ Π½Π° DLT ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ Π½Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠΈ Π±Π΅Π· ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ Π·Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎ ΠΈΠ·ΠΆΠΈΠ²ΡΠ²Π°Π½Π΅ Π½Π΅ ΠΏΠΎ-Π»ΠΎΡΠΎ ΠΎΡ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅ΡΠΎΠ²ΠΎΠ΄Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. Π’Π΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡΠ° Π·Π°Π΄ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° Π·Π»ΠΎΠ½Π°ΠΌΠ΅ΡΠ΅Π½ΠΎ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ β Π΅ΡΠΎ Π·Π°ΡΠΎ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½ Π΅ ΡΡΠΊ.
ΠΠΎΠ·ΡΠ½Π³ΠΈ ΠΎΡ Π±Π΅Π»ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ ΠΌΠ΅Π΄ΠΈΠΈ Π½ΠΈ ΠΎΠ±Π΅ΡΠ°Π²Π°Ρ, ΡΠ΅ ΡΠ»Π΅Π΄Π²Π°ΡΠΎΡΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π°. ΠΠ°ΠΊΠ²ΠΎ Π²ΡΡΡΠ½ΠΎΡΡ Π΅?
Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° Mainnet Ethereum ΡΠ°Π±ΠΎΡΠΈ Ρ ~30 tps. Π‘Π°ΠΌΠΎ ΠΏΠΎΡΠ°Π΄ΠΈ ΡΠΎΠ²Π° Π΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ Π²ΡΠ·ΠΏΡΠΈΠ΅ΠΌΠ΅ ΠΊΠ°ΡΠΎ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΅ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡ Π·Π° ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΠΈ Π½ΡΠΆΠ΄ΠΈ. Π‘ΡΠ΅Π΄ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ° ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ Π±Π΅Π½ΡΠΌΠ°ΡΠΊΠΎΠ²Π΅, ΠΏΠΎΠΊΠ°Π·Π²Π°ΡΠΈ 2000 tps (
Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡ
ΠΠ°Π±Π°Π²ΡΠ½Π΅ΡΠΎ ΠΎΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΠΈΠ½ΠΈΡΠΈΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π΄ΠΎ Π½Π΅ΠΉΠ½ΠΎΡΠΎ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»Π½ΠΎ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π°Π²ΠΈΡΠΈ Π½Π΅ ΡΠ°ΠΌΠΎ ΠΎΡ ΡΠΊΠΎΡΠΎΡΡΡΠ° Π½Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΏΡΠ΅Π· Π²ΡΠΈΡΠΊΠΈ Π΅ΡΠ°ΠΏΠΈ Π½Π° Π²Π°Π»ΠΈΠ΄ΠΈΡΠ°Π½Π΅ ΠΈ ΠΏΠΎΠ΄ΡΠ΅ΠΆΠ΄Π°Π½Π΅, Π½ΠΎ ΠΈ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠ°. ΠΠΎΡΠΈ Π°ΠΊΠΎ Π½Π°ΡΠ°ΡΠ° Π±Π»ΠΎΠΊΠΎΠ²Π° Π²Π΅ΡΠΈΠ³Π° Π½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ Π°Π½Π³Π°ΠΆΠΈΡΠ°ΠΌΠ΅ Ρ 1000000 10 488 tps, Π½ΠΎ ΠΎΡΠ½Π΅ΠΌΠ° XNUMX ΠΌΠΈΠ½ΡΡΠΈ, Π·Π° Π΄Π° ΡΠΎΡΠΌΠΈΡΠ°ΠΌΠ΅ XNUMXMB Π±Π»ΠΎΠΊ, ΡΠ΅ ΡΡΠ°Π½Π΅ Π»ΠΈ ΠΏΠΎ-Π»Π΅ΡΠ½ΠΎ Π·Π° Π½Π°Ρ?
ΠΠ΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΆΠΈΠ·Π½Π΅Π½ΠΈΡ ΡΠΈΠΊΡΠ» Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ Π² Hyperledger Fabric, Π·Π° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ ΠΎΡΠ½Π΅ΠΌΠ° Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΠΊΠ°ΠΊ Π΅ ΡΠ²ΡΡΠ·Π°Π½ΠΎ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅.
Π²Π·Π΅ΡΠΎ ΠΎΡ ΡΡΠΊ:
(1) ΠΠ»ΠΈΠ΅Π½ΡΡΡ ΡΠΎΡΠΌΠΈΡΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, ΠΈΠ·ΠΏΡΠ°ΡΠ° Ρ Π½Π° ΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°ΡΠΈ ΠΏΠ°ΡΡΠ½ΡΠΎΡΠΈ, ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ ΡΠΈΠΌΡΠ»ΠΈΡΠ°Ρ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ° (ΠΏΡΠΈΠ»Π°Π³Π°Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ ΠΎΡ Π²Π΅ΡΠΈΠΆΠ½ΠΈΡ ΠΊΠΎΠ΄ ΠΊΡΠΌ ΡΠ΅ΠΊΡΡΠΎΡΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, Π½ΠΎ Π½Π΅ ΡΠ΅ Π°Π½Π³Π°ΠΆΠΈΡΠ°Ρ Ρ ΠΊΠ½ΠΈΠ³Π°ΡΠ°) ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Ρ RWSet - ΠΈΠΌΠ΅Π½Π° Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π΅, Π²Π΅ΡΡΠΈΠΈ ΠΈ ΡΡΠΎΠΉΠ½ΠΎΡΡΠΈ, Π²Π·Π΅ΡΠΈ ΠΎΡ ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡΡΠ° Π² CouchDB, (2) ΠΏΠΎΡΡΡΠΈΡΠ΅Π»ΠΈΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ΠΈΡ RWSet ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ°, (3) ΠΊΠ»ΠΈΠ΅Π½ΡΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π° Π·Π° ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ Π½Π° Π²ΡΠΈΡΠΊΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ ΠΏΠ°ΡΡΠ½ΡΠΎΡΠΈ (ΠΏΠΎΡΡΡΠΈΡΠ΅Π»ΠΈ) ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΈΠ·ΠΏΡΠ°ΡΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ° ΠΊΡΠΌ ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΡΡΡΠΊΠ° , ΠΈΠ»ΠΈ Π³ΠΎ ΠΈΠ·ΠΏΡΠ°ΡΠ° Π±Π΅Π· ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° (ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°ΡΠ° Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠ΅ ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠΈ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ), ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΡΡΡΠ²Π°Π½Π΅ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊ ΠΈ ( 4) ΠΈΠ·ΠΏΡΠ°ΡΠ° ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π΄ΠΎ Π²ΡΠΈΡΠΊΠΈ ΠΏΠ°ΡΡΠ½ΡΠΎΡΠΈ, Π° Π½Π΅ ΡΠ°ΠΌΠΎ Π΄ΠΎ ΠΏΠΎΡΡΡΠΈΡΠ΅Π»ΠΈ; ΠΏΠ°ΡΡΠ½ΡΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠ²Π΅ΡΡΠ²Π°Ρ Π΄Π°Π»ΠΈ Π²Π΅ΡΡΠΈΠΈΡΠ΅ Π½Π° ΠΊΠ»ΡΡΠΎΠ²Π΅ΡΠ΅ Π² Π½Π°Π±ΠΎΡΠ° Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ ΡΡΠ²ΠΏΠ°Π΄Π°Ρ Ρ Π²Π΅ΡΡΠΈΠΈΡΠ΅ Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, ΠΏΠΎΠ΄ΠΏΠΈΡΠΈΡΠ΅ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΡΡΠΈΡΠ΅Π»ΠΈ ΠΈ Π½Π°ΠΊΡΠ°Ρ Π°Π½Π³Π°ΠΆΠΈΡΠ°Ρ Π±Π»ΠΎΠΊΠ°.
ΠΠΎ ΡΠΎΠ²Π° Π½Π΅ Π΅ Π²ΡΠΈΡΠΊΠΎ. ΠΠ°Π΄ Π΄ΡΠΌΠΈΡΠ΅ βΠΏΠΎΡΡΡΠ²Π°ΡΠΈΡΡ ΡΠΎΡΠΌΠΈΡΠ° Π±Π»ΠΎΠΊβ ΡΠ΅ ΠΊΡΠΈΠ΅ Π½Π΅ ΡΠ°ΠΌΠΎ ΠΏΠΎΠ΄ΡΠ΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈΡΠ΅, Π½ΠΎ ΠΈ 3 ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ Π·Π°ΡΠ²ΠΊΠΈ ΠΎΡ Π»ΠΈΠ΄Π΅ΡΠ° ΠΊΡΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ: Π»ΠΈΠ΄Π΅ΡΡΡ Π΄ΠΎΠ±Π°Π²Ρ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΊΡΠΌ Π΄Π½Π΅Π²Π½ΠΈΠΊΠ°, ΠΈΠ·ΠΏΡΠ°ΡΠ° Π΄ΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅, ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΡ Π΄ΠΎΠ±Π°Π²Ρ ΠΊΡΠΌ ΡΠ΅Ρ Π½ΠΈΡ ΠΆΡΡΠ½Π°Π», ΠΈΠ·ΠΏΡΠ°ΡΠ° ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π° ΡΡΠΏΠ΅ΡΠ½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Π΄ΠΎ Π»ΠΈΠ΄Π΅ΡΠ°, Π»ΠΈΠ΄Π΅ΡΡΡ Π°Π½Π³Π°ΠΆΠΈΡΠ° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ΡΠΎ, ΠΈΠ·ΠΏΡΠ°ΡΠ° ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Π·Π° Π°Π½Π³Π°ΠΆΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅ ΡΠ΅ Π°Π½Π³Π°ΠΆΠΈΡΠ°Ρ. ΠΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΡΠΊ Π΅ ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° Π±Π»ΠΎΠΊΠ° ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-ΡΠ΅ΡΡΠΎ ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΡΡΡΠΊΠ° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π° ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡ. Hyperledger Fabric ΠΈΠΌΠ° Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ° Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊ: BatchTimeout - Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊ ΠΈ BatchSize - ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° Π±Π»ΠΎΠΊΠ° (Π±ΡΠΎΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ°ΠΌΠΈΡ Π±Π»ΠΎΠΊ Π² Π±Π°ΠΉΡΠΎΠ²Π΅). ΠΠ΅Π΄Π½Π°Π³Π° ΡΠ»Π΅Π΄ ΠΊΠ°ΡΠΎ Π΅Π΄ΠΈΠ½ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ Π΄ΠΎΡΡΠΈΠ³Π½Π΅ Π»ΠΈΠΌΠΈΡΠ°, ΡΠ΅ ΠΈΠ·Π΄Π°Π²Π° Π½ΠΎΠ² Π±Π»ΠΎΠΊ. ΠΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ·Π»ΠΈ Π·Π° ΠΏΠΎΠ΄ΡΠ΅ΠΆΠ΄Π°Π½Π΅, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ ΡΠ΅ ΠΎΡΠ½Π΅ΠΌΠ΅ ΡΠΎΠ²Π°. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΠ΅ BatchTimeout ΠΈ BatchSize. ΠΠΎ ΡΡΠΉ ΠΊΠ°ΡΠΎ RWSets ΡΠ° Ρ Π²Π΅ΡΡΠΈΠΈ, ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌ ΠΏΡΠ°Π²ΠΈΠΌ Π±Π»ΠΎΠΊΠ°, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-Π³ΠΎΠ»ΡΠΌΠ° Π΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΠ° ΠΎΡ MVCC ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ. Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, Ρ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° BatchTimeout, UX ΡΠ΅ Π²Π»ΠΎΡΠ°Π²Π° ΠΊΠ°ΡΠ°ΡΡΡΠΎΡΠ°Π»Π½ΠΎ. Π‘ΡΡΡΠ²Π° ΠΌΠΈ ΡΠ΅ ΡΠ°Π·ΡΠΌΠ½Π° ΠΈ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Π° ΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΡ Π΅ΠΌΠ° Π·Π° ΡΠ΅ΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠ΅Π·ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ.
ΠΠ°ΠΊ Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅ΡΠ΅ ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π·Π° ΡΠΈΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠ° ΠΈ Π΄Π° Π½Π΅ Π·Π°Π³ΡΠ±ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π° Π·Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ°
ΠΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-Π΄ΡΠ»Π³ΠΎ Π΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° Π±Π»ΠΎΠΊΠ°, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-Π²ΠΈΡΠΎΠΊΠ° Π΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½Π°. ΠΠ΄Π½ΠΎΡΠΎ Π½Π΅ ΡΠ»Π΅Π΄Π²Π° Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΎΡ Π΄ΡΡΠ³ΠΎΡΠΎ, Π½ΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΏΠΎΠΌΠ½ΠΈ, ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡ Π² RAFT ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΡΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ Π·Π°ΡΠ²ΠΊΠΈ ΠΎΡ Π»ΠΈΠ΄Π΅ΡΠ° ΠΊΡΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅ ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ. ΠΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ·Π»ΠΈ Π·Π° ΠΏΠΎΡΡΡΠΊΠ°, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ ΡΠ΅ ΠΎΡΠ½Π΅ΠΌΠ΅. ΠΠΎΠ»ΠΊΠΎΡΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΡΠΊ Π΅ ΡΠ°Π·ΠΌΠ΅ΡΡΡ ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π° ΠΎΠ±ΡΠ°Π·ΡΠ²Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊ, ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠ° ΡΠ°ΠΊΠΈΠ²Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ°ΠΊ Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° Π±Π»ΠΎΠΊΠ°, Π±Π΅Π· Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π°ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΊΡΠ°ΠΉΠ½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»?
ΠΡΡΠ²ΠΎ, ΡΡΡΠ±Π²Π° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΄Π° ΡΠ°Π·ΡΠ΅ΡΠΈΡΠ΅ MVCC ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ, ΠΏΡΠΈΡΠΈΠ½Π΅Π½ΠΈ ΠΎΡ Π³ΠΎΠ»Π΅ΠΌΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° Π±Π»ΠΎΠΊΠ°, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΠΊΠ»ΡΡΠ²Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ RWSets ΡΡΡ ΡΡΡΠ°ΡΠ° Π²Π΅ΡΡΠΈΡ. ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° (ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½ ΠΌΡΠ΅ΠΆΠ°ΡΠ°, ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π΅ Π±Π΅ΠΊΠ΅Π½Π΄ ΠΈ ΠΈΠΌΠ°ΠΌ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄) MVCC ΠΌΠ°Π½ΠΈΠΏΡΠ»Π°ΡΠΎΡ Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ, ΠΊΠΎΠΉΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ»ΠΈ ΠΎΡΠ΄Π΅Π»Π½Π° ΡΡΠ»ΡΠ³Π°, ΠΈΠ»ΠΈ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡ Π½Π°Π΄ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅, ΠΈΠ½ΠΈΡΠΈΠΈΡΠ°ΡΠΎ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ, Ρ Π»ΠΎΠ³ΠΈΠΊΠ° Π·Π° ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ ΠΎΠΏΠΈΡ.
ΠΠΎΠ²ΡΠΎΡΠ½ΠΈΡΡ ΠΎΠΏΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠΈ Ρ Π΅ΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»Π½Π° ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ, Π½ΠΎ ΡΠΎΠ³Π°Π²Π° Π»Π°ΡΠ΅Π½ΡΠ½ΠΎΡΡΡΠ° ΡΡΡΠΎ ΡΠ΅ Π½Π°ΠΌΠ°Π»Π΅Π΅ Π΅ΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»Π½ΠΎ. Π’Π°ΠΊΠ° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ ΠΎΠΏΠΈΡ Π² ΡΠ°ΠΌΠΊΠΈΡΠ΅ Π½Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΠ°Π»ΠΊΠΈ Π³ΡΠ°Π½ΠΈΡΠΈ, ΠΈΠ»ΠΈ ΠΏΠΎΡΡΠΎΡΠ½Π΅Π½. Π‘ ΠΎΠ³Π»Π΅Π΄ Π½Π° Π΅Π²Π΅Π½ΡΡΠ°Π»Π½ΠΈ ΡΠ±Π»ΡΡΡΡΠΈ Π² ΠΏΡΡΠ²ΠΈΡ Π²Π°ΡΠΈΠ°Π½Ρ.
Π‘Π»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΡΡΠΏΠΊΠ° Π΅ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΡΠΎ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΎ, ΡΠ°ΠΊΠ° ΡΠ΅ Π΄Π° Π½Π΅ ΡΠ°ΠΊΠ° 15, 30 ΠΈΠ»ΠΈ 10000000 XNUMX XNUMX ΡΠ΅ΠΊΡΠ½Π΄ΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π·Π°Π΄Π°Π΄Π΅ΠΌ ΠΊΠ°ΡΠΎ BatchTimeout. ΠΠΎ Π² ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ Π΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠ°Π·ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅, ΠΈΠ½ΠΈΡΠΈΠΈΡΠ°Π½ΠΈ ΠΎΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ°, ΡΠ° Π·Π°ΠΏΠΈΡΠ°Π½ΠΈ / Π½Π΅ ΡΠ° Π·Π°ΠΏΠΈΡΠ°Π½ΠΈ Π² Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½Π°.
ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈΡΠ΅. ΠΠ°ΠΉ-Π»Π΅ΡΠ½ΠΈΡΡ Π²Π°ΡΠΈΠ°Π½Ρ Π΅ CouchDB ΠΏΠΎΡΠ°Π΄ΠΈ Π»Π΅ΡΠ½Π°ΡΠ° ΠΌΡ ΡΠΏΠΎΡΡΠ΅Π±Π°: Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ ΠΈΠΌΠ° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΎΡ ΠΊΡΡΠΈΡΡΠ°, REST API ΠΈ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅ΡΠ½ΠΎ Π΄Π° Π½Π°ΡΡΡΠΎΠΈΡΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΈ ΡΠ°ΡΠ΄ΠΈΠ½Π³ Π·Π° Π½Π΅Ρ. ΠΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ΡΠ΅ ΠΎΡΠ΄Π΅Π»Π½Π° ΠΊΠΎΠ»Π΅ΠΊΡΠΈΡ Π² ΡΡΡΠΈΡ Π΅ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π½Π° CouchDB, ΠΊΠΎΠΉΡΠΎ Fabric ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ²Π΅ΡΠΎΠ²Π½ΠΎΡΠΎ ΡΠΈ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅. Π’ΡΡΠ±Π²Π° Π΄Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π°ΠΌΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ ΠΎΡ ΡΠΎΠ·ΠΈ Π²ΠΈΠ΄.
{
Status string // Π‘ΡΠ°ΡΡΡ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ: "pending", "done", "failed"
TxID: string // ID ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ
Error: string // optional, ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅
}
Π’ΠΎΠ·ΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π° Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ, ΠΏΡΠ΅Π΄ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ° Π΄Π° Π±ΡΠ΄Π΅ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½Π° Π΄ΠΎ ΠΏΠ°ΡΡΠ½ΡΠΎΡΠΈ, ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡΡ Π½Π° ΠΎΠ±Π΅ΠΊΡΠ° ΡΠ΅ Π²ΡΡΡΠ° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ (ΡΡΡΠΈΡΡ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΡΠΎ ΠΊΠ»ΡΡ), Π°ΠΊΠΎ ΡΠΎΠ²Π° Π΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅, Π° ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΏΠΎΠ»Π΅ΡΠ°ΡΠ° Π‘ΡΠ°ΡΡΡ, TxID ΠΈ ΠΡΠ΅ΡΠΊΠ° ΡΠ° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ° ΡΠ΅ ΠΏΡΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎΡ ΠΏΠ°ΡΡΠ½ΡΠΎΡΠΈ.
ΠΡΠΈ ΡΠ°Π·ΠΈ ΡΡ
Π΅ΠΌΠ° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ Π½Π΅ ΡΠ°ΠΊΠ° Π±Π»ΠΎΠΊΡΡ Π΄Π° ΡΠ΅ ΡΠΎΡΠΌΠΈΡΠ° Π½Π°ΠΉ-Π½Π°ΠΊΡΠ°Ρ, Π³Π»Π΅Π΄Π°ΠΉΠΊΠΈ Π²ΡΡΡΡΡΠΎΡΠΎ ΡΠ΅ ΠΊΠΎΠ»Π΅Π»ΠΎ Π½Π° Π΅ΠΊΡΠ°Π½Π° Π·Π° 10 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ, ΡΠΎΠΉ ΠΏΠΎΠ»ΡΡΠ°Π²Π° Π½Π΅Π·Π°Π±Π°Π²Π΅Π½ ΠΎΡΠ³ΠΎΠ²ΠΎΡ ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΈ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ.
ΠΠ·Π±ΡΠ°Ρ
ΠΌΠ΅ BoltDB Π·Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΠ°ΡΡΡΠΈ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, Π·Π°ΡΠΎΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠΏΠ΅ΡΡΠΈΠΌ ΠΏΠ°ΠΌΠ΅Ρ ΠΈ Π½Π΅ ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° Π³ΡΠ±ΠΈΠΌ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π΅Π½ ΡΡΡΠ²ΡΡ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΠΊΠΎΠ³Π°ΡΠΎ ΡΠΎΠ²Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΡΠ²Π° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π·Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΡΠ΅ΠΊΡΡ. ΠΠ΅ΠΆΠ΄Ρ Π΄ΡΡΠ³ΠΎΡΠΎ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ Π΄Π°Π»ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ CouchDB Π·Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° ΡΡ
Π΅ΠΌΠ°ΡΠ°, ΠΎΠΏΠΈΡΠ°Π½Π° ΠΏΠΎ-Π³ΠΎΡΠ΅, ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π·Π° ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ²Π΅ΡΠ°, Π²ΡΠ² Π²ΡΠ΅ΠΊΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΈΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°ΡΠ΅ Π½Π°ΡΠΈΠ½Π°, ΠΏΠΎ ΠΊΠΎΠΉΡΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Ρ Π² CouchDB. ΠΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π² CouchDB ΡΠ°Π·ΠΌΠ΅ΡΡΡ Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅ Π½Π° b-Π΄ΡΡΠ²ΠΎΡΠΎ Π΅ 1279 Π±Π°ΠΉΡΠ°, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° Π½Π° ΡΠ΅ΠΊΡΠΎΡΠ° Π½Π° Π΄ΠΈΡΠΊΠ°, ΠΊΠΎΠ΅ΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π²Π°, ΡΠ΅ ΠΊΠ°ΠΊΡΠΎ ΡΠ΅ΡΠ΅Π½Π΅ΡΠΎ, ΡΠ°ΠΊΠ° ΠΈ ΡΠ΅Π±Π°Π»Π°Π½ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π΄ΡΡΠ²ΠΎΡΠΎ ΡΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠΈ Π΄ΠΎ Π΄ΠΈΡΠΊΠ°. ΠΠΏΡΠΈΠΌΠ°Π»Π½ΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΎΡΠ³ΠΎΠ²Π°ΡΡ Π½Π° ΡΡΠ°Π½Π΄Π°ΡΡΠ°
ΠΠ±ΡΠ°ΡΠ½ΠΎ Π½Π°Π»ΡΠ³Π°Π½Π΅: Π±ΡΡΠ΅ΡΠ½Π° ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ
ΠΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ. ΠΠΎΠ²Π΅ΡΠ΅, ΠΎΡΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ΅ΠΌΠ΅, ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠ΅ΡΡΡΡΠΈ Ρ Π΄ΡΠ·ΠΈΠ½Π° Π΄ΡΡΠ³ΠΈ ΡΡΠ»ΡΠ³ΠΈ ΠΎΡΠ²Π΅Π½ ΡΠ΅Π·ΠΈ, ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΈ Π½Π° Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠ°ΡΠ° - ΠΈ Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Π±Π΅Π·ΡΠΏΡΠ΅ΡΠ½ΠΎ Π΄ΠΎΡΠΈ Π½Π° ΠΌΠ°ΡΠΈΠ½ΠΈ, Π½Π° ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° Intellij Idea Π±ΠΈ Π±ΠΈΠ»Π° ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π΄ΠΎΡΠ°Π΄Π½Π°.
ΠΡΠΎΠ±Π»Π΅ΠΌΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½Π°ΡΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ Π½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π» ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π», ΡΠ΅ ΡΠ΅ΡΠ°Π²Π° ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π½Π°ΡΠΈΠ½ΠΈ. ΠΠ° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊΠ²ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ.
ΠΎΡΠΏΠ°Π΄Π°Π½Π΅ΡΠΎ: ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΡΠ²ΡΡΠ΄ΠΈΠΌ, ΡΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΈΠΌ Π½Π°ΠΉ-ΠΌΠ½ΠΎΠ³ΠΎ X ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π·Π° T ΡΠ΅ΠΊΡΠ½Π΄ΠΈ. ΠΡΠΈΡΠΊΠΈ Π·Π°ΡΠ²ΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ Π½Π°Π΄Π²ΠΈΡΠ°Π²Π°Ρ ΡΠΎΠ·ΠΈ Π»ΠΈΠΌΠΈΡ, ΡΠ΅ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Ρ. ΠΠΎΡΡΠ° Π΅ ΠΏΡΠΎΡΡΠΎ, Π½ΠΎ ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°Π±ΡΠ°Π²ΠΈΡΠ΅ Π·Π° UX.
ΠΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ°Π½Π΅: ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΡ ΡΡΡΠ±Π²Π° Π΄Π° ΠΈΠΌΠ° Π½ΡΠΊΠ°ΠΊΡΠ² ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, ΡΡΠ΅Π· ΠΊΠΎΠΉΡΠΎ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ ΠΎΡ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π΄Π° ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠ° tps Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ. ΠΠ΅ Π΅ Π»ΠΎΡΠΎ, Π½ΠΎ Π½Π°Π»Π°Π³Π° Π·Π°Π΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π·Π° Π·Π°ΡΠ΅ΠΆΠ΄Π°Π½Π΅ Π΄Π° Π²Π½Π΅Π΄ΡΡΡ ΡΠΎΠ·ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. ΠΠ° Π½Π°Ρ ΡΠΎΠ²Π° Π΅ Π½Π΅ΠΏΡΠΈΠ΅ΠΌΠ»ΠΈΠ²ΠΎ, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½ Π² Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ Π² Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΠΎΡΠ΄Π°Π²Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ.
Π±ΡΡΠ΅ΡΠΈΡΠ°Π½Π΅: Π²ΠΌΠ΅ΡΡΠΎ Π΄Π° ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π΄Π° ΡΠ΅ ΡΡΠΏΡΠΎΡΠΈΠ²Π»ΡΠ²Π°ΠΌΠ΅ Π½Π° Π²Ρ ΠΎΠ΄Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊ ΠΎΡ Π΄Π°Π½Π½ΠΈ, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π±ΡΡΠ΅ΡΠΈΡΠ°ΠΌΠ΅ ΡΠΎΠ·ΠΈ ΠΏΠΎΡΠΎΠΊ ΠΈ Π΄Π° Π³ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π°ΠΌΠ΅ Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠ°ΡΠ° ΡΠΊΠΎΡΠΎΡΡ. ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΡΠΎΠ²Π° Π΅ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΎΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π°ΠΊΠΎ ΠΈΡΠΊΠ°ΠΌΠ΅ Π΄Π° ΠΎΡΠΈΠ³ΡΡΠΈΠΌ Π΄ΠΎΠ±ΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎ ΠΈΠ·ΠΆΠΈΠ²ΡΠ²Π°Π½Π΅. ΠΠΈΠ΅ Π²Π½Π΅Π΄ΡΠΈΡ ΠΌΠ΅ Π±ΡΡΠ΅ΡΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΎΠΏΠ°ΡΠΊΠ° Π² RabbitMQ.
ΠΠ²Π΅ Π½ΠΎΠ²ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ° Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΊΡΠΌ ΡΡ
Π΅ΠΌΠ°ΡΠ°: (1) ΡΠ»Π΅Π΄ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° API Π·Π°ΡΠ²ΠΊΠ°, ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ ΠΏΠΎΡΡΠ°Π²Ρ Π½Π° ΠΎΠΏΠ°ΡΠΊΠ° Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ°, ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΡ ΠΏΠΎΠ»ΡΡΠ°Π²Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅, ΡΠ΅ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡΡΠ° Π΅ ΠΏΡΠΈΠ΅ΡΠ° ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ°, ( 2) Π±Π΅ΠΊΠ΅Π½Π΄ΡΡ ΡΠ΅ΡΠ΅ Π΄Π°Π½Π½ΠΈ ΠΎΡ ΠΎΠΏΠ°ΡΠΊΠ°ΡΠ° ΡΡΡ ΡΠΊΠΎΡΠΎΡΡ, ΠΏΠΎΡΠΎΡΠ΅Π½Π° Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ°; ΠΈΠ½ΠΈΡΠΈΠΈΡΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΡ ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ° Π΄Π°Π½Π½ΠΈΡΠ΅ Π² Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ.
Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ²Π΅Π»ΠΈΡΠΈΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ ΠΈ Π΄Π° Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠ΅ ΠΊΠ°ΠΏΠ°ΡΠΈΡΠ΅ΡΠ° ΠΊΠΎΠ»ΠΊΠΎΡΠΎ ΠΈΡΠΊΠ°ΡΠ΅, ΠΊΠ°ΡΠΎ ΡΠΊΡΠΈΠ΅ΡΠ΅ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡΡΠ° ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»Ρ.
ΠΡΡΠ³ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ
Π’ΡΠΊ Π½Π΅ Π±Π΅ΡΠ΅ ΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΡΠΎ Π·Π° Π²Π΅ΡΠΈΠΆΠ½ΠΈΡ ΠΊΠΎΠ΄, Π·Π°ΡΠΎΡΠΎ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π² Π½Π΅Π³ΠΎ Π½ΡΠΌΠ° ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΡΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°. ΠΠ΅ΡΠΈΠΆΠ½ΠΈΡΡ ΠΊΠΎΠ΄ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉ-ΠΏΡΠΎΡΡ ΠΈ ΡΠΈΠ³ΡΡΠ΅Π½ - ΡΠΎΠ²Π° Π΅ Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΎΡ Π½Π΅Π³ΠΎ. Π Π°ΠΌΠΊΠ°ΡΠ° Π½ΠΈ ΠΏΠΎΠΌΠ°Π³Π° ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π° ΠΏΠΈΡΠ΅ΠΌ Π²Π΅ΡΠΈΠΆΠ΅Π½ ΠΊΠΎΠ΄ ΠΏΡΠΎΡΡΠΎ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎ.
Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, Π½Π°ΡΠΈΡΡ Π΅ΠΊΠΈΠΏ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° Π½Π°Π±ΠΎΡ ΠΎΡ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ, Π·Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ Fabric ΠΏΡΠΎΡΡΠ° ΠΈ ΠΏΡΠΈΡΡΠ½Π°:
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π’ΠΎΠ·ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠ»Π΅ΡΠ½ΡΠ²Π° Π·Π°ΠΌΡΠ½Π°ΡΠ° Π½Π° Hyperledger Fabric Ρ Quorum, Π΄ΡΡΠ³ΠΈ ΡΠ°ΡΡΠ½ΠΈ Ethereum ΠΌΡΠ΅ΠΆΠΈ (PoA ΠΈΠ»ΠΈ Π΄ΠΎΡΠΈ PoW), Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π° ΡΠ΅Π°Π»Π½Π°ΡΠ° ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΠ΅Π»Π½Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ, Π½ΠΎ Π² ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° Π½ΠΎΡΠΌΠ°Π»Π΅Π½ UX (ΠΊΠ°ΠΊΡΠΎ Π·Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π² Π±ΡΠ°ΡΠ·ΡΡΠ°, ΡΠ°ΠΊΠ° ΠΈ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ ). ΠΠΎΠ³Π°ΡΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΠ΅ Fabric Ρ Ethereum Π² ΡΡ Π΅ΠΌΠ°ΡΠ°, ΡΠ°ΠΌΠΎ Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ ΠΎΠΏΠΈΡ/Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΠ° ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° Π±ΡΠ΄Π΅ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½Π° ΠΎΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° MVCC ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ ΠΊΡΠΌ Π°ΡΠΎΠΌΠ½ΠΎ nonce ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΠ·ΠΏΡΠ°ΡΠ°Π½Π΅. ΠΡΡΠ΅ΡΠΈΡΠ°Π½Π΅ΡΠΎ ΠΈ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡ Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΠ΅Π°ΠΊΡΠΈΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊ. Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Ρ ΠΈΠ»ΡΠ΄ΠΈ Π²ΡΠ·Π»ΠΈ Π·Π° ΠΏΠΎΡΡΡΠΊΠ° ΠΈ Π΄Π° Π½Π΅ ΡΠ΅ ΡΡΡΠ°Ρ ΡΠ²Π°ΡΠ΅, ΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ΡΠ΅ ΡΠ΅ ΡΠΎΡΠΌΠΈΡΠ°Ρ ΡΠ²ΡΡΠ΄Π΅ ΡΠ΅ΡΡΠΎ ΠΈ Π·Π°ΡΠ΅ΠΆΠ΄Π°Ρ ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΡΡΡΠΊΠ°.
ΠΠ±ΡΠΎ Π²Π·Π΅ΡΠΎ ΡΠΎΠ²Π° Π΅ Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΈΡΠΊΠ°Ρ
Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»Ρ. Π©Π΅ ΡΠ΅ ΡΠ°Π΄Π²Π°ΠΌ, Π°ΠΊΠΎ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π½Π° Π½ΡΠΊΠΎΠ³ΠΎ Π² ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΌΡ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com