ΠΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡ ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅ Π½Π° 11-12 ΡΠ»ΠΈ Π² Π‘Π°Π½ΠΊΡ ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³
Hydra Π΅ Π΅Π΄Π½Π° ΠΎΡ Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΈΡΠ΅ Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ ΠΏΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ΠΠ΅ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²Π°Π½ΠΎ ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠΈΠΎΠ·Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ°, ΠΏΠΎΠ΄Π±ΠΎΡ Π½Π° Π»Π΅ΠΊΡΠΎΡΠΈ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈ. ΠΠΈΠ½Π°Π»Π°ΡΠ° ΡΠ΅Π΄ΠΌΠΈΡΠ° Π·Π° ΡΠΎΠ²Π°
ΠΠΈΠ΅
ΠΠΎΡΠΈΠ²ΠΈΡΠ°Π½Π΅
ΠΠΊΠΎ ΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΡΠ΅ Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅, ΡΠΎΠ³Π°Π²Π° ΠΏΠΎ Π΅Π΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ Π½Π°ΡΠΈΠ½ ΡΠ΅ Π·Π°Π½ΠΈΠΌΠ°Π²Π°ΡΠ΅ Ρ ΠΌΠ½ΠΎΠ³ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΈ ΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ. ΠΠΊΡΠΏΠ΅ΡΡΠΈ Π² ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠ°Π±ΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Ρ ΡΡΡ , Π½ΠΎ ΠΈΠΌΠΏΠ»ΠΈΡΠΈΡΠ½ΠΎ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½ΠΈ Π³Π»Π΅Π΄Π° ΠΎΡΠ²ΡΡΠΊΡΠ΄Π΅: Π²ΡΠ² Π²ΡΠ΅ΠΊΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡΠ΄ΡΠ΅Π½ ΠΊΠΎΠΌΠΏΡΡΡΡ ΠΈΠ»ΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΡΡΠ»ΡΠ³Π° ΠΈΠΌΠ° Π½Π΅ΡΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ.
ΠΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΎΠ±Ρ
Π²Π°ΡΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π°ΡΠΏΠ΅ΠΊΡΠΈ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ½ΠΎΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅. ΠΡ Π΄ΡΡΠ³Π°ΡΠ° ΡΡΡΠ°Π½Π° Π½Π° ΡΠΏΠ΅ΠΊΡΡΡΠ° ΠΈΠΌΠ°ΠΌΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ Π½Π°ΡΡΠ½ΠΈ ΡΠΊΠΎΠ»ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π·ΠΊΡΠΈΠ²Π°Ρ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»ΠΎΠΆΠ½Π° ΡΠ΅ΠΎΡΠΈΡ Π²ΡΠ² ΡΠΎΡΠΌΠ°Ρ Π½Π° Π»Π΅ΠΊΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΏΠΎΡΠ΅Π΄Π½ΠΎ Ρ Hydra Π² Π‘Π°Π½ΠΊΡ ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³ ΠΈΠΌΠ°
ΠΠΎΠΌΠΈΡΠ»Π΅ΡΠ΅ Π·Π° ΡΠΎΠ²Π°: ΠΆΠΈΠ²Π΅Π΅ΠΌ Π² Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅, ΠΊΠΎΠ³Π°ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ Π»ΠΈΡΠ½ΠΎ Ρ ΠΎΡΠ½ΠΎΠ²Π°ΡΠ΅Π»ΠΈΡΠ΅ Π½Π° ΠΎΠ±Π»Π°ΡΡΡΠ° Π½Π° Π½Π°ΡΠΊΠ°ΡΠ° ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡΡΠ²ΠΎΡΠΎ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΡΡΠ°Π²Π°ΠΌΠ΅. Π€ΠΈΠ·ΠΈΡΠΈΡΠ΅ Π½ΡΠΌΠ° Π΄Π° ΡΡΠ΅ΡΠ½Π°Ρ Π½ΠΈΡΠΎ ΠΡΡΠΎΠ½, Π½ΠΈΡΠΎ ΠΠΉΠ½ΡΠ°ΠΉΠ½ β Π²Π»Π°ΠΊΡΡ ΡΠΈ ΡΡΡΠ³Π½Π°. ΠΠΎ Π΄ΠΎ Π½Π°Ρ Π²ΡΠ΅ ΠΎΡΠ΅ ΠΆΠΈΠ²Π΅ΡΡ ΠΎΠ½Π΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΠ·Π΄Π°Π΄ΠΎΡ Π° ΠΎΡΠ½ΠΎΠ²ΠΈΡΠ΅ Π½Π° ΡΠ΅ΠΎΡΠΈΡΡΠ° Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΈΠ·ΠΌΠΈΡΠ»ΠΈΡ Π° ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈ Π΅Π·ΠΈΡΠΈ Π·Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°Π½Π΅ ΠΈ Π·Π° ΠΏΡΡΠ²ΠΈ ΠΏΡΡ Π²ΡΠΏΠ»ΡΡΠΈΡ Π° Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π² ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ ΠΏΡΠΎΡΠΎΡΠΈΠΏΠΈ. Π’Π΅Π·ΠΈ Ρ ΠΎΡΠ° Π½Π΅ ΡΠ° Π½Π°ΠΏΡΡΠ½Π°Π»ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΠΈ Π½Π°ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°, ΡΠ΅ ΡΠΎΡΠ½ΠΎ ΡΠ΅Π³Π° ΡΠ°Π±ΠΎΡΡΡ ΠΏΠΎ Π½Π°Π»Π΅ΠΆΠ°ΡΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΡΠ²Π΅ΡΠΎΠ²Π½ΠΎΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ ΡΠ° Π½Π°ΠΉ-Π³ΠΎΠ»Π΅ΠΌΠΈΡΠ΅ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ Π½Π° Π·Π½Π°Π½ΠΈΡ ΠΈ ΠΎΠΏΠΈΡ Π΄Π½Π΅Ρ.
ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ ΡΡΠ΅ΡΠ½Π΅ΠΌ Ρ ΡΡΡ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΎΡΡΠ°Π²Π° ΡΠΈΡΡΠΎ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ½Π°: ΠΌΠ°Π»ΡΠΈΠ½Π° ΠΎΡ Π½Π°Ρ ΠΌΠΎΠ³Π°Ρ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π΄Π° Π½Π°Π±Π»ΡΠ΄Π°Π²Π°Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΈ ΡΡΠ±ΠΈΡΠΈΡ Π² Π½ΡΠΊΠΎΠΉ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅Ρ Π² Π ΠΎΡΠ΅ΡΡΡΡ ΠΈ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π΄Π° ΡΠ΅ Π²ΡΡΡΠ½Π°Ρ ΠΊΡΠΌ Π‘ΠΠ© ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π·Π° Π»Π΅ΠΊΡΠΈΡ Ρ ΠΠ°ΠΉΠΊΡΠ» Π‘ΠΊΠΎΡ. ΠΠΎΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΡΠΎ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ»Π΅Π½ΠΎΠ²Π΅ Π½Π° Hydra Π±ΠΈ ΡΡΡΡΠ²Π°Π»ΠΎ ΠΌΠ°Π»ΠΊΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, Π±Π΅Π· Π΄Π° Π±ΡΠΎΠΈΠΌ Π±Π΅Π·Π΄Π½Π°ΡΠ° ΠΎΡ Π·Π°Π³ΡΠ±Π΅Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ (Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ Π·Π²ΡΡΠΈ ΠΊΠ°ΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ ΡΡΡΡΠ΅Π½Π΅).
ΠΡ Π΄ΡΡΠ³Π° ΡΡΡΠ°Π½Π°, ΠΈΠΌΠ°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΎΠΏ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ ΠΏΠΎ Π½Π΅ΠΎΡΠ»ΠΎΠΆΠ½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Π² ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈ ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΈΠΌΠ°Ρ ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΡΠ°Π·ΠΊΠ°ΠΆΠ°Ρ. ΠΠΎ ΡΡΠΊ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ - ΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ, Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ ΠΈΠΌ Π΅ ΡΠ΅Π½Π½ΠΎ. ΠΠ°, Π°ΠΊΠΎ ΡΡΠ΅ ΡΠ»ΡΠΆΠΈΡΠ΅Π» Π½Π° Microsoft, Google ΠΈΠ»ΠΈ JetBrains, Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΠ° Π΄Π° ΡΡΠ΅ΡΠ½Π΅ΡΠ΅ Π½ΡΠΊΠΎΠΉ ΠΎΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈΡΠ΅ Π»Π΅ΠΊΡΠΎΡΠΈ Π½Π° Π²ΡΡΡΠ΅ΡΠ½ΠΎ ΡΡΠ±ΠΈΡΠΈΠ΅ ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π° ΡΡΠ·ΠΊΠΎ, Π½ΠΎ ΠΊΠ°ΡΠΎ ΡΡΠ»ΠΎ Π½Π΅, ΡΠΎΠ²Π° Π½Π΅ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Π²ΡΠ΅ΠΊΠΈ Π΄Π΅Π½.
ΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° Hydra ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° Π²Π°ΠΆΠ½Π° Π·Π°Π΄Π°ΡΠ°, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΎΡ Π½Π°Ρ Π½Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΡΡ ΡΠ°ΠΌΠΈ - Π½Π° Π΅Π΄Π½ΠΎ ΠΌΡΡΡΠΎ ΠΈ ΠΏΠΎ Π΅Π΄Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΡΡ ΡΡΠ±ΠΈΡΠ° Ρ ΠΎΡΠ°, ΡΠΈΠΈΡΠΎ ΠΈΠ΄Π΅ΠΈ ΠΈΠ»ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΠΏΡΠΎΠΌΠ΅Π½ΡΡ ΠΆΠΈΠ²ΠΎΡΠ° Π²ΠΈ. ΠΡΠΈΠ·Π½Π°Π²Π°ΠΌ, ΡΠ΅ Π½Π΅ Π²ΡΠ΅ΠΊΠΈ ΠΈΠΌΠ° Π½ΡΠΆΠ΄Π° ΠΎΡ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈΠ»ΠΈ Π½ΡΠΊΠ°ΠΊΠ²ΠΈ ΡΠ»ΠΎΠΆΠ½ΠΈ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»Π½ΠΈ Π½Π΅ΡΠ°. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΠ°ΡΠ΅ CRUD Π² PHP Π΄ΠΎ ΠΊΡΠ°Ρ Π½Π° ΠΆΠΈΠ²ΠΎΡΠ° ΡΠΈ ΠΈ Π΄Π° ΠΎΡΡΠ°Π½Π΅ΡΠ΅ Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΠ°ΡΡΠ»ΠΈΠ²ΠΈ. ΠΠΎ ΠΊΠΎΠΉΡΠΎ ΠΈΠΌΠ° Π½ΡΠΆΠ΄Π°, ΡΠΎΠ²Π° Π΅ Π²Π°ΡΠΈΡΡ ΡΠ°Π½Ρ.
ΠΠ·ΠΌΠΈΠ½Π° Π΄ΠΎΡΡΠ° Π²ΡΠ΅ΠΌΠ΅ ΠΎΡ ΠΏΡΡΠ²ΠΎΡΠΎ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° Hydra Π½Π° HabrΓ©. ΠΡΠ΅Π· ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ Π±Π΅ΡΠ΅ ΡΠ²ΡΡΡΠ΅Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ° - ΠΈ ΡΠ΅Π³Π° ΠΈΠΌΠ°ΠΌΠ΅ ΡΠΏΠΈΡΡΠΊ Π½Π° ΠΏΠΎΡΡΠΈ Π²ΡΠΈΡΠΊΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈ. ΠΠ΅Π· Π±Π°Π²Π½ΠΈ Π΅Π΄Π½ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ, ΠΏΡΠΎΡΡΠΎ ΡΠΈΡΡ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ Ρ Π°ΡΠ΄ΠΊΠΎΡ! ΠΠ΅ΠΊΠ° Π·Π°Π²ΡΡΡΠΈΠΌ Ρ ΠΎΠ±ΡΠΈ Π΄ΡΠΌΠΈ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊΠ²ΠΎ ΠΈΠΌΠ°ΠΌΠ΅ Π² ΡΡΡΠ΅ΡΠ΅ ΡΠΈ ΡΠ΅Π³Π°.
ΠΠ»ΡΡΠΎΠ²ΠΈ Π±Π΅Π»Π΅ΠΆΠΊΠΈ
ΠΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ Π±Π΅Π»Π΅ΠΆΠΊΠΈ Π·Π°ΠΏΠΎΡΠ²Π°Ρ ΠΈ Π·Π°Π²ΡΡΡΠ²Π°Ρ Π΄Π½ΠΈΡΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ°. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅Π»ΡΠ° Π½Π° Π²ΡΡΡΠΏΠΈΡΠ΅Π»Π½Π°ΡΠ° Π±Π΅Π»Π΅ΠΆΠΊΠ° Π΅ Π΄Π° ΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ ΠΎΠ±ΡΠΈΡΡ Π΄ΡΡ ΠΈ ΠΏΠΎΡΠΎΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ°. ΠΠ°ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½Π° Π±Π΅Π»Π΅ΠΆΠΊΠ° ΡΠ΅Π³Π»ΠΈ ΡΠ΅ΡΡΠ° ΠΈ ΠΎΠ±ΡΡΠ½ΡΠ²Π° ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΆΠΈΠ²Π΅Π΅ΠΌ ΡΡΡ Π·Π½Π°Π½ΠΈΡΡΠ° ΠΈ ΡΠΌΠ΅Π½ΠΈΡΡΠ°, ΠΏΡΠΈΠ΄ΠΎΠ±ΠΈΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ°. ΠΠ°ΡΠ°Π»ΠΎΡΠΎ ΠΈ ΠΊΡΠ°ΡΡ: ΡΠΎΠ²Π°, ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ ΠΏΠΎΠΌΠ½ΠΈ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠ΅ ΠΈ ΠΊΠ°ΡΠΎ ΡΡΠ»ΠΎ ΠΈΠΌΠ° ΠΏΠΎΠ²ΠΈΡΠ΅Π½Π° Π·Π½Π°ΡΠΈΠΌΠΎΡΡ.
Cliff Click H2O ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ K/V Π°Π»Π³ΠΎΡΠΈΡΡΠΌ
ΠΠ»ΠΈΡ Π΅ Π»Π΅Π³Π΅Π½Π΄Π° Π² ΡΠ²Π΅ΡΠ° Π½Π° Java. Π ΠΊΡΠ°Ρ Π½Π° 90-ΡΠ΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π·Π° ΡΠ²ΠΎΡΡΠ° Π΄ΠΎΠΊΡΠΎΡΡΠΊΠ° Π΄ΠΈΡΠ΅ΡΡΠ°ΡΠΈΡ, ΡΠΎΠΉ Π½Π°ΠΏΠΈΡΠ²Π° Π΄ΠΎΠΊΠ»Π°Π΄, ΠΎΠ·Π°Π³Π»Π°Π²Π΅Π½
ΠΡΠ² Π²ΡΡΡΠΏΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π½Π° Π±Π΅Π»Π΅ΠΆΠΊΠ° ΠΠ»ΠΈΡ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° Π΄ΡΡΠ³ΠΎΡΠΎ ΡΠΈ Π½Π°ΡΠΈΠ½Π°Π½ΠΈΠ΅ -
ΠΡΡΠ³ Π΄ΠΎΠΊΠ»Π°Π΄, ΠΊΠΎΠΉΡΠΎ ΠΠ»ΠΈΡ ΡΠ΅ Π΄Π°Π΄Π΅ Π΅...
ΠΠ°ΠΉ-ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°ΡΠ° ΡΠ°ΡΡ Π·Π°ΠΏΠΎΡΠ½Π°, ΠΊΠΎΠ³Π°ΡΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡ Π° Ρ Π°ΡΠ΄ΡΠ΅Ρ Π·Π° Π³ΠΎΠ»ΡΠΌ Π±ΠΈΠ·Π½Π΅Ρ - ΡΡΠΏΠ΅ΡΠΊΠΎΠΌΠΏΡΡΡΡ, ΠΊΠΎΠΉΡΠΎ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Ρ Java. ΠΠ΅ΡΠ΅ Π΄ΠΎΡΡΠ° ΠΈΠ½ΠΎΠ²Π°ΡΠΈΠ²Π½ΠΎ Π½Π΅ΡΠΎ, ΠΏΡΠΈΠ³ΠΎΠ΄Π΅Π½ΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π·Π° Java, ΠΊΠΎΡΡΠΎ ΠΈΠΌΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ - Π±Π°ΡΠΈΠ΅ΡΠΈ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π·Π° ΡΡΠ±ΠΈΡΠ°Π½Π΅ Π½Π° ΠΎΡΠΏΠ°Π΄ΡΡΠΈ Ρ Π½ΠΈΡΠΊΠ° ΠΏΠ°ΡΠ·Π°, ΠΌΠ°ΡΠΈΠ²ΠΈ Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π³ΡΠ°Π½ΠΈΡΠΈ, Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡΠΈ... ΠΠ΄Π½Π° ΠΎΡ Π½Π°ΠΉ-Π³ΠΎΡΠΈΠ½ΠΈΡΠ΅ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π΅ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½Π°ΡΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½Π° ΠΏΠ°ΠΌΠ΅Ρ. Π¦Π΅Π»ΠΈΡΡ L1 Π½Π° ΠΊΠΎΠ΅ΡΠΎ ΠΈ Π΄Π° Π΅ ΠΎΡ 864-ΡΠ΅ ΡΠ΄ΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΡΠ°ΡΡΠ²Π° Π² ΠΏΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΎΡΠΎΠ±Π΅Π½ΠΎ Π²Π°ΠΆΠ½ΠΎ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠ»ΡΡΠ°Π»ΠΊΠΈ Π² Java (ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΠ΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ°Π±ΠΎΡΡΡ ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΎ, ΡΡΠΈΠ³Π° Π΄Π° Π½ΡΠΌΠ° ΡΠ΅Π°Π»Π΅Π½ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°). ΠΠΎ ΠΊΡΠ°ΡΠΈΠ²Π°ΡΠ° ΠΈΠ΄Π΅Ρ Π±Π΅ΡΠ΅ ΡΠΌΠ°Π·Π°Π½Π° ΠΎΡ ΡΡΡΠΎΠ²Π°ΡΠ° ΡΠ΅Π°Π»Π½ΠΎΡΡ - ΠΈ Π² ΡΠΎΠ·ΠΈ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ ΠΠ»ΠΈΡ ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ Π·Π°ΡΠΎ HTM ΠΈ STM Π½Π΅ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈ Π·Π° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡΠ΅ Π½ΡΠΆΠ΄ΠΈ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΈΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ.
ΠΠ°ΠΉΠΊΡΠ» Π‘ΠΊΠΎΡ - ΠΠ²ΠΎΠΉΠ½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ
Π¦Π΅Π»ΠΈΡΡ ΡΠ²ΡΡ ΠΏΠΎΠ·Π½Π°Π²Π° ΠΠ°ΠΉΠΊΡΠ» Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ΅Π±Π½ΠΈΠΊΠ°
Π©ΠΎ ΡΠ΅ ΠΎΡΠ½Π°ΡΡ Π΄ΠΎ ΡΠ²Π΅ΡΠ° Π½Π° Java, ΡΠΎΠ²Π° Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ: Π·Π°Π΅Π΄Π½ΠΎ Ρ ΠΡΠ³ ΠΠ΅Π° ΡΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΈ Π½Π΅Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ ΠΈ ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΈ ΠΎΠΏΠ°ΡΠΊΠΈ, Π²ΡΡΡ
Ρ ΠΊΠΎΠΈΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈΡΠ΅ Π½Π° Java. Π’ΠΎΠ²Π° Π΅ ΡΠΎΡΠ½ΠΎ ΡΠΎΠ²Π°, Π·Π° ΠΊΠΎΠ΅ΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° Π±Π΅Π»Π΅ΠΆΠΊΠ° βΠΠ²ΠΎΠΉΠ½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈβ - Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π·ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ Π² Java SE 6 ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Ρ 10 ΠΏΡΡΠΈ java.util.concurrent.ThreadPoolExecutor
. ΠΠΊΠΎ ΡΠ΅ ΡΡΠ΄ΠΈΡΠ΅ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π°Ρ ΡΠ΅Π·ΠΈ βΠΠ²ΠΎΠΉΠ½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈβ, Π·Π½Π°ΡΠΈ ΠΈΠΌΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΡΠΎΠ²Π°
ΠΠΎΡΠΈΡ Π₯Π΅ΡΠ»ΠΈΡ
ΠΈ - ΠΠ»ΠΎΠΊΡΠ΅ΠΉΠ½ ΠΈ Π±ΡΠ΄Π΅ΡΠ΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ
Π ΡΠ°Π·ΠΈ Π·Π°ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½Π° Π±Π΅Π»Π΅ΠΆΠΊΠ° ΠΠΎΡΠΈΡ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° ΡΠ΅ΠΎΡΠΈΡΡΠ° ΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ°ΡΠ° Π½Π° Π±Π»ΠΎΠΊΡΠ΅ΠΉΠ½ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΎΡ Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° Π½Π° ΠΊΠ»Π°ΡΠΈΠΊΠ°ΡΠ° Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΈ ΠΊΠ°ΠΊ ΡΡ ΠΎΠΏΡΠΎΡΡΡΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ. Π’ΠΎΠ²Π° Π΅ Π΄ΠΎΠΊΠ»Π°Π΄ ΠΈΠ·ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΠΎ ΡΠ΅ΠΌΠ°ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° - ΠΈΠ·ΠΎΠ±ΡΠΎ Π½Π΅ Π·Π° ΠΊΠΎΠΏΠ°Π΅Π½Π΅, Π° ΠΏΠΎ-ΡΠΊΠΎΡΠΎ Π·Π° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ Π½Π°ΡΠΈΡΠ΅ Π·Π½Π°Π½ΠΈΡ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΎ Π²ΡΠ² Π²ΡΡΠ·ΠΊΠ° Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π·Π°Π΄Π°ΡΠΈ.
ΠΡΠ΅Π· ΡΠ»ΠΈ 2017 Π³. ΠΠΎΡΠΈΡ Π²Π΅ΡΠ΅ Π΄ΠΎΠΉΠ΄Π΅ Π² Π ΡΡΠΈΡ, Π·Π° Π΄Π° ΠΏΠΎΡΠ΅ΡΠΈ ΡΡΠΈΠ»ΠΈΡΠ΅ΡΠΎ SPTDC, ΡΡΠ°ΡΡΠ²Π° Π² ΡΡΠ΅ΡΠ°ΡΠ° JUG.ru, Π° Π·Π°ΠΏΠΈΡΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π³Π»Π΅Π΄Π°Π½ Π² YouTube:
ΠΡΠ½ΠΎΠ²Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°
Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΠΈΠΌΠ° ΠΊΡΠ°ΡΡΠΊ ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄ΠΈΡΠ΅, Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ°. ΠΡΠΊΠΎΠΈ ΠΎΡ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈΡΠ΅ ΡΠ° ΠΎΠΏΠΈΡΠ°Π½ΠΈ ΡΡΠΊ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, Π΄ΡΡΠ³ΠΈ ΠΏΠΎ-Π½Π°ΠΊΡΠ°ΡΠΊΠΎ. ΠΡΠ»Π³ΠΈΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΎΡΠΈΠ²Π°Ρ
Π° Π³Π»Π°Π²Π½ΠΎ ΠΊΡΠΌ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈ Π½Π° Π°Π½Π³Π»ΠΈΠΉΡΠΊΠΈ Π΅Π·ΠΈΠΊ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ
Π° Π²ΡΡΠ·ΠΊΠΈ ΠΊΡΠΌ Π½Π°ΡΡΠ½ΠΈ ΡΡΠ°ΡΠΈΠΈ, ΡΠ΅ΡΠΌΠΈΠ½ΠΈ Π² Wikipedia ΠΈ Ρ.Π½. ΠΡΠ»Π½ΠΈΡΡ ΡΠΏΠΈΡΡΠΊ Π΅ Π½Π°Π»ΠΈΡΠ΅Π½
ΠΠ΅ΡΠ»ΠΈ ΠΠ°ΠΌΠΏΠΎΡΡ - ΠΡΠΏΡΠΎΡΠΈ ΠΈ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈ
ΠΠ΅ΡΠ»ΠΈ ΠΠ°ΠΌΠΏΠΎΡΡ Π΅ Π°Π²ΡΠΎΡ Π½Π° ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡΠΈ ΡΡΡΠ΄ΠΎΠ²Π΅ Π² ΠΎΠ±Π»Π°ΡΡΡΠ° Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ.
Π’ΠΎΠ²Π° Π΅ Π½Π°ΠΉ-Π½Π΅ΠΎΠ±ΠΈΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ°ΡΡ ΠΎΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° ΠΊΠ°ΡΠΎ ΡΠΎΡΠΌΠ°Ρ, Π·Π°ΡΠΎΡΠΎ Π΄ΠΎΡΠΈ Π½Π΅ Π΅ Π΄ΠΎΠΊΠ»Π°Π΄, Π° ΡΠ΅ΡΠΈΡ Π·Π° Π²ΡΠΏΡΠΎΡΠΈ ΠΈ ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈ. ΠΠΎΠ³Π°ΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΡΠ°ΡΡ ΠΎΡ Π°ΡΠ΄ΠΈΡΠΎΡΠΈΡΡΠ° Π²Π΅ΡΠ΅ Π΅ Π·Π°ΠΏΠΎΠ·Π½Π°ΡΠ° (ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅) Ρ Π²ΡΠΈΡΠΊΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ ΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° βΡΠ΅ΠΎΡΠΈΡΡΠ° Π½Π° ΠΠ°ΠΌΠΏΠΎΡΡβ, Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΡΡΠ°ΡΠΈΠΈ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈ, ΠΏΠΎ-Π²Π°ΠΆΠ½ΠΎ Π΅ Π΄Π° ΠΎΡΠ΄Π΅Π»ΠΈΡΠ΅ ΡΡΠ»ΠΎΡΠΎ Π½Π°Π»ΠΈΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° Π΄ΠΈΡΠ΅ΠΊΡΠ½Π° ΠΊΠΎΠΌΡΠ½ΠΈΠΊΠ°ΡΠΈΡ.
ΠΠ΄Π΅ΡΡΠ° Π΅ ΠΏΡΠΎΡΡΠ° - Π³Π»Π΅Π΄Π°ΡΠ΅ Π΄Π²Π° ΡΠ΅ΠΏΠΎΡΡΠ°ΠΆΠ° Π² YouTube:
ΠΡΡΠ²ΠΈΡΡ ΠΎΡ ΡΠ΅Π·ΠΈ Π΄Π²Π° Π²ΠΈΠ΄Π΅ΠΎΠΊΠ»ΠΈΠΏΠ° Π²Π΅ΡΠ΅ ΠΈΠΌΠ°ΠΌΠ΅
ΠΠ°Π±Π΅Π»Π΅ΠΆΠΊΠ°: ΠΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ»ΠΈΠΏΠΎΠ²Π΅ Π½Π° ΠΠ΅ΡΠ»ΠΈ ΠΠ°ΠΌΠΏΠΎΡΡ Π² YouTube. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ° ΡΡΡΠ°Ρ
ΠΎΡΠ½ΠΎ
ΠΠ°ΡΡΠΈΠ½ ΠΠ»Π΅ΠΏΠΌΠ°Π½ - Π‘ΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΡΡΡΡΡΠ΄Π½ΠΈΡΠ΅ΡΡΠ²ΠΎ
ΠΠ°ΡΡΠΈΠ½ ΠΠ»Π΅ΠΏΠΌΠ°Π½ Π΅ ΠΈΠ·ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π» Π² ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° Π² ΠΠ΅ΠΉΠΌΠ±ΡΠΈΠ΄ΠΆ, ΡΠ°Π±ΠΎΡΠ΅Ρ Π²ΡΡΡ
Ρ CRDT ΠΈ ΡΠΎΡΠΌΠ°Π»Π½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ. ΠΠ½ΠΈΠ³Π°ΡΠ° Π½Π° ΠΠ°ΡΡΠΈΠ½
ΠΡΠ΅Π΄ΠΈ Π΄Π° ΡΠ΅ Π½Π°ΡΠΎΡΠΈ ΠΊΡΠΌ Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΡΠ½ΠΈΡΠ΅ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½ΠΈΡ, ΠΠ°ΡΡΠΈΠ½ Π΅ ΡΠ°Π±ΠΎΡΠΈΠ» Π² ΠΈΠ½Π΄ΡΡΡΡΠΈΡΡΠ° ΠΈ Π΅ ΡΡΠΎΡΠ½ΠΎΠ²Π°ΡΠ΅Π» Π½Π° Π΄Π²Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΈ ΡΡΠ°ΡΡΠΈΡΠ°ΡΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ:
- Rapportive, ΠΏΠΎΡΠ²Π΅ΡΠ΅Π½ Π½Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠΎΡΠΈΠ°Π»Π½ΠΈΡ ΠΏΡΠΎΡΠΈΠ» Π½Π° ΠΊΠΎΠ½ΡΠ°ΠΊΡΠΈ ΠΎΡ Π²Π°ΡΠΈΡ ΠΈΠΌΠ΅ΠΉΠ», ΠΊΠΎΠΉΡΠΎ LinkedIn Π·Π°ΠΊΡΠΏΠΈ ΠΏΡΠ΅Π· 2012 Π³.;
- Go Test It, ΡΡΠ»ΡΠ³Π° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π½Π° ΡΠ΅Π±ΡΠ°ΠΉΡΠΎΠ²Π΅ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π±ΡΠ°ΡΠ·ΡΡΠΈ, ΠΊΠΎΡΡΠΎ RedGate Π·Π°ΠΊΡΠΏΠΈ ΠΏΡΠ΅Π· 2009 Π³.
ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ, ΠΠ°ΡΡΠΈΠ½, ΠΌΠ°ΠΊΠ°Ρ ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΎΡ Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΡΡΠΎΠ²ΠΈ Π±Π΅Π»Π΅ΠΆΠΊΠΈ, Π²Π΅ΡΠ΅ ΡΡΠΏΡ Π΄Π° Π΄Π°Π΄Π΅ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΏΡΠΈΠ½ΠΎΡ Π·Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΈ Π·Π° ΠΈΠ½Π΄ΡΡΡΡΠΈΡΡΠ°.
Π ΡΠ°Π·ΠΈ Π»Π΅ΠΊΡΠΈΡ ΠΠ°ΡΡΠΈΠ½ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° ΡΠ΅ΠΌΠ°, ΠΏΠΎ-Π±Π»ΠΈΠ·ΠΊΠ° Π΄ΠΎ Π½Π΅Π³ΠΎΠ²ΠΈΡΠ΅ Π°ΠΊΠ°Π΄Π΅ΠΌΠΈΡΠ½ΠΈ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½ΠΈΡ. Π Google ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π΄ΠΈΠ²Π°Π½ΠΈ Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠ½ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈ βΡΡΠ²ΠΌΠ΅ΡΡΠ½ΠΎΡΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°Π½Π΅β ΡΠ΅ ΠΎΡΠ½Π°ΡΡ Π΄ΠΎ Π·Π°Π΄Π°ΡΠ° Π·Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ: Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π» ΠΈΠΌΠ° ΡΠ²ΠΎΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ° Π½Π° ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½ΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½Ρ, ΠΊΠΎΠΉΡΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠ°, ΠΈ Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ°Ρ ΠΏΡΠ΅Π· ΠΌΡΠ΅ΠΆΠ°ΡΠ° Π΄ΠΎ ΠΎΡΡΠ°Π½Π°Π»Π°ΡΠ° ΡΠ°ΡΡ ΠΎΡ ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ. ΠΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠ΅ ΠΎΡΠ»Π°ΠΉΠ½ Π²ΠΎΠ΄ΡΡ Π΄ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½Π° Π½Π΅ΡΡΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ Π½Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° ΠΏΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ Π½Π° Π΄ΡΡΠ³ΠΈ ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΡΠΎ ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ ΠΈΠ·ΠΈΡΠΊΠ²Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΈ. Π’ΠΎΡΠ½ΠΎ Π·Π° ΡΠΎΠ²Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ
Π‘Π»Π΅Π΄Π²Π°ΡΠ°ΡΠ° ΡΠ΅Π΄ΠΌΠΈΡΠ° ΡΠ΅ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°ΠΌΠ΅ Π΄ΡΠ»Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Ρ Ρ ΠΠ°ΡΡΠΈΠ½ Π½Π° Π₯Π°Π±ΡΠ΅, ΡΠ΅ Π±ΡΠ΄Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ.
ΠΠ΅Π΄ΡΠΎ Π Π°ΠΌΠ°Π»Ρ
Π΅ΡΠ΅ - Π‘ΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ Π±Π΅Π· ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π±Π΅Π· ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅
ΠΠ΅Π΄ΡΠΎ ΡΠ°Π±ΠΎΡΠΈ Π² Cisco ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ ΠΏΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π΄Π΅ΡΠ΅ΡΠΈΠ½Π° Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΈ Π·Π° ΡΠΈΠ½Ρ
ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ, ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ Π±Π΅Π· Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΈ ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ ΠΈ Π²ΡΠΈΡΠΊΠΎ, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΈ ΡΠ΅ΠΌΠ°. ΠΠ°ΡΡΠΎΡΡΠΈΡΠ΅ ΠΌΡ ΠΈΠ·ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠΊΠΈ ΠΈ ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΠ½ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠΈ ΡΠ΅ ΡΠΎΠΊΡΡΠΈΡΠ°Ρ Π²ΡΡΡ
Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΡΠΎΡΡΡΠ΅ΡΠ½Π°ΡΠ° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½Π° ΠΏΠ°ΠΌΠ΅Ρ, ΠΏΠΎΡΡΠΎΡΠ½Π½Π°ΡΠ° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΈ, ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΈ ΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΈ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’ΠΎΠΉ Π΅ ΠΈ Π°Π²ΡΠΎΡ Π½Π° ΡΠΈΡΠΎΠΊΠΎ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ Π² ΡΠ΅ΡΠ½ΠΈ ΠΊΡΡΠ³ΠΎΠ²Π΅ Π±Π»ΠΎΠ³
ΠΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ, ΠΎΡ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΎΠΏΠ°ΡΠΊΠΈ ΠΎΡ ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π°ΠΊΡΡΠΎΡΠΈ Π΄ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠ°Π½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΊΠ»ΡΡ-ΡΡΠΎΠΉΠ½ΠΎΡΡ. Π’Π΅ ΡΠ°Π±ΠΎΡΡΡ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π² Java JDK ΠΎΡ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈ Π±Π°Π²Π½ΠΎ ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΡΡ ΠΊΡΠΌ C++.
ΠΠ°ΠΉ-ΠΏΡΠΎΡΡΠΈΡΡ Π½Π°ΡΠΈΠ½ Π·Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠ°ΡΠ°Π»Π΅Π»Π½Π° ΡΡΡΡΠΊΡΡΡΠ° ΠΎΡ Π΄Π°Π½Π½ΠΈ Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎ (Π΅Π΄Π½ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΎ) ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, ΠΏΡΠΈ ΠΊΠΎΠ΅ΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΈΡΠ΅ ΡΠ° Π·Π°ΡΠΈΡΠ΅Π½ΠΈ ΠΎΡ ΠΌΡΡΠ΅ΠΊΡΠΈ. Π’ΠΎΠ²Π° Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ Π·Π° Π²ΡΠ΅ΠΊΠΈ ΡΠ½ΠΈ, Π½ΠΎ ΠΈΠΌΠ° ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅ΡΠΎ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°. Π ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΡΡΡΡΠΊΡΡΡΠΈΡΠ΅ ΠΎΡ Π΄Π°Π½Π½ΠΈ Π±Π΅Π· Π·Π°ΠΊΠ»ΡΡΠ²Π°Π½Π΅ ΠΈ ΠΈΠ·ΡΠ°ΠΊΠ²Π°Π½Π΅ Π½Π΅ ΡΠ°ΠΌΠΎ ΡΠ΅ ΡΠΏΡΠ°Π²ΡΡ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ Ρ Π³ΡΠ΅ΡΠΊΠΈΡΠ΅, Π½ΠΎ ΡΡΡΠΎ ΡΠ°ΠΊΠ° ΠΈΠΌΠ°Ρ ΠΏΠΎ-Π΄ΠΎΠ±ΡΡ ΠΏΡΠΎΡΠΈΠ» Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ - ΠΎΠ±Π°ΡΠ΅ ΡΡΡ Π½ΠΎΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ ΠΈΠ·ΠΈΡΠΊΠ²Π° Π·Π°Π΄ΡΠ»Π±ΠΎΡΠ΅Π½ΠΈ Π΅ΠΊΡΠΏΠ΅ΡΡΠ½ΠΈ ΠΏΠΎΠ·Π½Π°Π½ΠΈΡ ΠΈ Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½Π΅ ΠΊΡΠΌ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠ΄ΠΈΠ½ Π³ΡΠ΅ΡΠ΅Π½ ΡΠ΅Π΄ ΠΊΠΎΠ΄ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½, Π·Π° Π΄Π° ΡΡΡΠΏΠΈ Π²ΡΠΈΡΠΊΠΎ.
ΠΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΠΌ ΡΠ°ΠΊΠ°, ΡΠ΅ Π΄ΠΎΡΠΈ ΠΈ Π½Π΅ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ Π΄Π° ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ° ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° ΡΠ°ΠΊΠΈΠ²Π° ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ? ΠΠ·Π²Π΅ΡΡΠ½ΠΎ Π΅, ΡΠ΅ Π²ΡΠ΅ΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π΅Π½ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ Π½Π°ΠΏΡΠ°Π²Π΅Π½ Π½ΠΈΡΠΊΠΎΠ²ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ΅Π½, ΠΊΠ°ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΡΡΡ
Π₯Π°ΠΉΠ΄ΠΈ Π₯Π°ΡΡΡΠ΄ - ΠΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Ρ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡ
Π₯Π°ΠΉΠ΄ΠΈ Π₯Π°ΡΡΡΠ΄ Π΅, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ΠΠ°ΡΡΠΈΠ½, ΠΈΠ·ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π» Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π² ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° Π² ΠΠ΅ΠΉΠΌΠ±ΡΠΈΠ΄ΠΆ. ΠΠ΅ΠΉΠ½ΠΈΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΠ΅ΡΠΈ ΡΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡ, ΡΠΎΠ»Π΅ΡΠ°Π½ΡΠ½ΠΎΡΡ ΠΊΡΠΌ Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ ΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡ. Π’Ρ Π΅ Π½Π°ΠΉ-ΠΈΠ·Π²Π΅ΡΡΠ½Π° ΡΡΡ ΡΠ²ΠΎΠ΅ΡΠΎ ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° Paxos, Π½Π°ΡΠ΅ΡΠ΅Π½
Π‘ΠΏΠΎΠΌΠ½Π΅ΡΠ΅ ΡΠΈ ΡΠΎΠ²Π°
Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Ρ ΠΎΡΡΠΎΠ²Π΅ - Π·Π° Π°Π΄ΡΠ΅ΡΠΈΡΠ°Π½Π΅, ΠΈΠ·Π±ΠΎΡ Π½Π° Π»ΠΈΠ΄Π΅Ρ, Π±Π»ΠΎΠΊΠΈΡΠ°Π½Π΅ ΠΈΠ»ΠΈ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠΈΡ - Π΅ ΠΎΡΠ½ΠΎΠ²Π΅Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π² ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ. Paxos Π²Π΅ΡΠ΅ Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΡ Π½Π°ΡΠΈΠ½ Π·Π° ΡΠ΅ΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡΠ½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΈ ΠΎΠΊΠΎΠ»ΠΎ Π½Π΅Π³ΠΎ ΡΠ΅ ΠΏΡΠΎΠ²Π΅ΠΆΠ΄Π°Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΡΠ»Π΅Π΄Π²Π°Π½ΠΈΡ Π·Π° ΡΠ°Π·ΡΠΈΡΡΠ²Π°Π½Π΅ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° Π·Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½ΡΠΆΠ΄ΠΈ.
Π ΡΠ°Π·ΠΈ Π»Π΅ΠΊΡΠΈΡ ΡΠ΅ ΠΏΡΠ΅ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ½Π°ΡΠ° ΠΎΡΠ½ΠΎΠ²Π° Π½Π° Paxos, ΠΎΠ±Π»Π΅ΠΊΡΠ°Π²Π°ΠΉΠΊΠΈ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½ΠΈΡΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΠ±ΠΎΠ±ΡΠ°Π²Π°ΠΉΠΊΠΈ Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ°. Π©Π΅ Π²ΠΈΠ΄ΠΈΠΌ, ΡΠ΅ Paxos Π΅ ΠΏΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΌΠΎ Π΅Π΄Π½Π° ΠΎΠΏΡΠΈΡ ΡΡΠ΅Π΄ ΠΎΠ³ΡΠΎΠΌΠ΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡΠ½ΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈ ΠΈ ΡΠ΅ Π΄ΡΡΠ³ΠΈ ΡΠΎΡΠΊΠΈ ΠΎΡ ΡΠΏΠ΅ΠΊΡΡΡΠ° ΡΡΡΠΎ ΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° Π΄ΠΎΠ±ΡΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ.
ΠΠ»Π΅ΠΊΡ ΠΠ΅ΡΡΠΎΠ² β ΠΠ°ΠΌΠ°Π»Π΅ΡΠ΅ ΡΠ°Π·Ρ
ΠΎΠ΄ΠΈΡΠ΅ ΡΠΈ Π·Π° ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠ΅Ρ
ΠΎΠ΄Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΈ Π΅Π²ΡΠΈΠ½ΠΈ ΠΊΠ²ΠΎΡΡΠΌΠΈ
ΠΠ»Π΅ΠΊΡ Π΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡ ΠΏΠΎ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΏΠΎ-Π²Π°ΠΆΠ½ΠΎ Π·Π° Π½Π°Ρ, ΠΊΠΎΠΌΠΈΡΠ΅Ρ Π²
ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈ Ρ
ΠΡΠΈΡΠΊΠΎ ΠΎΠ±Π°ΡΠ΅ ΡΠΈ ΠΈΠΌΠ° ΡΠ΅Π½Π°. Π‘Ρ Π΅ΠΌΠ°ΡΠ° Π·Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Π½Π° ΠΊΠ²ΠΎΡΡΠΌ ΠΎΠ·Π½Π°ΡΠ°Π²Π° ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ Π·Π° ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅: ΠΈΠ·Π»ΠΈΡΠ½ΠΈΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΡΡΡ ΡΠ°Π½ΡΠ²Π°Ρ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΡΠ·Π»ΠΈ Π΅Π΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, Π·Π° Π΄Π° ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΠΈΠΌΠ° Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ Π½Π°Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΏΠΈΡ, ΠΊΠΎΠ³Π°ΡΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ½Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ. ΠΠΊΠ°Π·Π²Π° ΡΠ΅, ΡΠ΅ Π½Π΅ Π΅ Π½ΡΠΆΠ½ΠΎ Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ Π²ΡΠΈΡΠΊΠΈ Π΄Π°Π½Π½ΠΈ Π½Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ. ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΡΠ΅ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ, Π°ΠΊΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ Π΄Π°Π½Π½ΠΈ ΡΠ°ΠΌΠΎ Π½Π° ΡΠ°ΡΡ ΠΎΡ Π²ΡΠ·Π»ΠΈΡΠ΅ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ Π²ΡΠ·Π»ΠΈ (ΠΏΡΠ΅Ρ ΠΎΠ΄Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°) Π·Π° ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈ.
Π Ρ
ΠΎΠ΄Π° Π½Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅
ΠΠΌΠΈΡΡΠΈΠΉ ΠΡΠΊΠΎΠ² - Goroutines ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈ
ΠΠΌΠΈΡΡΠΈΠΉ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π² Google, ΠΊΠΎΠΉΡΠΎ ΡΠ°Π±ΠΎΡΠΈ Π²ΡΡΡ
Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Π·Π° C/C++ ΠΈ Go - Address/Memory/ThreadSanitizer ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΠ΄ΡΠΎΡΠΎ Π½Π° Linux. ΠΠΎΠΏΡΠΈΠ½Π΅ΡΠ΅ Π·Π° Go ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌ ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊ Π½Π° goroutine, ΠΌΡΠ΅ΠΆΠΎΠ² Π°Π½ΠΊΠ΅ΡΡΠΎΡ ΠΈ ΠΏΠ°ΡΠ°Π»Π΅Π»Π΅Π½ ΡΡΠ±ΠΈΡΠ°Ρ Π½Π° ΠΎΡΠΏΠ°Π΄ΡΡΠΈ. Π’ΠΎΠΉ Π΅ Π΅ΠΊΡΠΏΠ΅ΡΡ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡ, Π°Π²ΡΠΎΡ Π½Π° Π΄ΡΠ·ΠΈΠ½Π° Π½ΠΎΠ²ΠΈ Π½Π΅Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ ΠΈ Π΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΠΊ Π½Π°
Π‘Π΅Π³Π° ΠΌΠ°Π»ΠΊΠΎ Π·Π° ΡΠ°ΠΌΠΈΡ Π΄ΠΎΠΊΠ»Π°Π΄. ΠΠ·ΠΈΠΊΡΡ Go ΠΈΠΌΠ° Π²Π³ΡΠ°Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½ΠΎΡΡ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° goroutines (Π»Π΅ΠΊΠΈ Π½ΠΈΡΠΊΠΈ) ΠΈ ΠΊΠ°Π½Π°Π»ΠΈ (FIFO ΠΎΠΏΠ°ΡΠΊΠΈ). Π’Π΅Π·ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΈ ΠΏΡΠ°Π²ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅ΡΠ½ΠΎ ΠΈ ΠΏΡΠΈΡΡΠ½ΠΎ Π·Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π΄Π° ΠΏΠΈΡΠ°Ρ ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΠΊΠ°ΡΠΎ ΠΌΠ°Π³ΠΈΡ. ΠΠ°ΠΊΡΠΎ ΡΠ°Π·Π±ΠΈΡΠ°ΠΌΠ΅, ΡΡΠΊ Π½ΡΠΌΠ° ΠΌΠ°Π³ΠΈΡ. Π ΡΠΎΠ·ΠΈ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ ΠΠΌΠΈΡΡΠΈΠΉ ΡΠ΅ ΡΠ΅ Π·Π°Π΄ΡΠ»Π±ΠΎΡΠΈ Π² ΡΡΠ½ΠΊΠΎΡΡΠΈΡΠ΅ Π½Π° ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° Go ΠΈ ΡΠ΅ ΠΏΠΎΠΊΠ°ΠΆΠ΅ ΡΠ°ΠΉΠ½ΠΈΡΠ΅ Π½Π° ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΈ βΠΌΠ°Π³ΠΈΡβ. ΠΡΡΠ²ΠΎ, ΡΠΎΠΉ ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ° ΠΈ ΡΠ΅ Π²ΠΈ ΠΊΠ°ΠΆΠ΅ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠΈ. Π‘Π»Π΅Π΄ ΡΠΎΠ²Π° ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΡΠ΄Π΅Π»Π½ΠΈ Π°ΡΠΏΠ΅ΠΊΡΠΈ ΠΊΠ°ΡΠΎ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΡΠ° Π·Π° ΠΏΠ°ΡΠΊΠΈΡΠ°Π½Π΅/Π΄Π΅ΠΏΠ°ΡΠΊΠΈΡΠ°Π½Π΅ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° Π½Π° Π±Π»ΠΎΠΊΠΈΡΠ°ΡΠΈ ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈ ΠΏΠΎΠ²ΠΈΠΊΠ²Π°Π½ΠΈΡ. Π Π½Π°ΠΊΡΠ°Ρ, ΠΠΌΠΈΡΡΠΈΠΉ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ ΠΌΠ°Π»ΠΊΠΎ Π·Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π° ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²ΡΠΈΠΊΠ°.
ΠΠΌΠΈΡΡΠΈΠΉ ΠΡΠ³Π°ΠΉΡΠ΅Π½ΠΊΠΎ - Π£ΡΠΊΠΎΡΡΠ²Π°Π½Π΅ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π° Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ Ρ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠ½ΠΈ ΡΠΊΠΈΡΠΈ ΠΈ Π΄Ρ
ΠΠΌΠΈΡΡΠΈΠΉ ΡΠ°Π±ΠΎΡΠΈ Π² Π°ΡΡΡΠΎΡΡΠΈΠ½Π³Π° ΠΏΠΎΡΡΠΈ 9 Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π±Π΅Π· Π΄Π° Π³ΡΠ±ΠΈ Π²ΡΡΠ·ΠΊΠ° Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠΈΡΠ΅ΡΠ° ΠΈ Π½Π°ΡΡΠ½Π°ΡΠ° ΠΎΠ±ΡΠ½ΠΎΡΡ. ΠΠ½Π°Π»ΠΈΠ·ΡΡ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ Π΄Π°Π½Π½ΠΈ Π² Odnoklassniki ΡΡΠ°Π½Π° Π·Π° Π½Π΅Π³ΠΎ ΡΠ½ΠΈΠΊΠ°Π»Π΅Π½ ΡΠ°Π½Ρ Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ° ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΠ½Π° ΠΎΡΠ½ΠΎΠ²Π° Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ΅Π°Π»Π½ΠΈ, ΡΡΡΡΠ΅Π½ΠΈ ΠΏΡΠΎΠ΄ΡΠΊΡΠΈ.
ΠΠ½Π°Π»ΠΈΠ·ΡΡ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ Π³ΡΠ°ΡΠΈ Π΅ Π±ΠΈΠ» ΠΈ ΠΎΡΡΠ°Π²Π° ΡΡΡΠ΄Π½Π° Π·Π°Π΄Π°ΡΠ°: ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΠ°Π½Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π° ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅ Π½Π° ΡΡΡΠ΅Π΄Π΅Π½ Π²ΡΡΡ , Π΄Π°Π½Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΠΎ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ΅ ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ°ΡΠΈΠ½ΠΈ, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΎΠ΄ΠΈ Π΄ΠΎ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²Π°ΡΠ° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ°. Π ΡΠΎΠ·ΠΈ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΏΠΎΡΡΠΈΠ³Π½Π΅ΡΠ΅ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈ ΡΠΊΠΎΡΠΎΡΡΠΈ Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ°, ΠΊΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΠ½ΠΈ ΡΡΡΡΠΊΡΡΡΠΈ ΠΎΡ Π΄Π°Π½Π½ΠΈ ΠΈΠ»ΠΈ ΡΠ°ΠΊΡΠΈ ΠΊΠ°ΡΠΎ ΡΠΈΠΌΠ΅ΡΡΠΈΡΡΠ° Π½Π° Π³ΡΠ°ΡΠΈΠΊΠ°ΡΠ° Π½Π° ΠΏΡΠΈΡΡΠ΅Π»ΡΡΠ²ΠΎΡΠΎ Π² ΡΠΎΡΠΈΠ°Π»Π½Π° ΠΌΡΠ΅ΠΆΠ°. ΠΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ ΠΈΠ»ΡΡΡΡΠΈΡΠ°Π½ΠΎ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΈ ΠΊΠΎΠ΄ΠΎΠ²Π΅ Π² Apache Spark.
ΠΠ΅Π½ΠΈΡ Π ΠΈΡΡΠΎΠ² - ΠΠ°ΠΌΠ°Π»Π΅ΡΠ΅ ΡΠ°Π·Ρ
ΠΎΠ΄ΠΈΡΠ΅ ΡΠΈ Π·Π° ΡΡΡ
ΡΠ°Π½Π΅Π½ΠΈΠ΅ Ρ ΠΏΡΠ΅Ρ
ΠΎΠ΄Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΈ Π΅Π²ΡΠΈΠ½ΠΈ ΠΊΠ²ΠΎΡΡΠΌΠΈ
ΠΠ΅Π½ΠΈΡ - ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ
Π ΡΠΎΠ·ΠΈ ΡΠ°Π·Π³ΠΎΠ²ΠΎΡ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈΡΠ΅ Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ Π±ΡΡ Π° ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ΅Π½ΠΈ ΠΏΡΠ΅Π· ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈ ΠΎΡ ΡΡΡΠ°Π½Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠ° Π²ΡΡΡ Ρ Π²ΡΡΠΊΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΡΠ»ΠΎΠ²Π½ΠΎ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ (ΡΡΠ°Π²Π½ΡΠ²Π°Π½Π΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°). ΠΠ·Π²ΠΎΠ΄ΡΡ Π΅, ΡΠ΅ ΠΆΠΈΠ²ΠΎΡΡΡ Π½Π΅ Π·Π°Π²ΡΡΡΠ²Π° Ρ Π΄Π²ΡΡΠ°Π·ΠΎΠ² ΠΊΠΎΠΌΠΈΡ, ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΡΡ Π²ΡΡΡ Ρ Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ - Π½Π° Π½ΠΈΠ²ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΈ (2PC, Percolator, RAMP) ΠΈΠΌΠ°Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠΈΡΠΈ ΠΈ Π½Π΅ Π½ΠΈ ΡΠ΅ Π΄Π°Π²Π°Ρ Π±Π΅Π·ΠΏΠ»Π°ΡΠ½ΠΎ.
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ ΠΠΈΠ½ΠΎΠ²ΠΈΠ΅Π² - ΠΠ΅ Π²ΡΠΈΡΠΊΠΈ ML Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π΄ΠΎΡΡΠΈΠ³Π°Ρ Π΄ΠΎ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉ
ΠΠ»Π΅ΠΊΡΠ΅ΠΉ (
Π ΡΠ°Π·ΠΈ Π»Π΅ΠΊΡΠΈΡ ΠΠ»Π΅ΠΊΡΠ΅ΠΉ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Π½Π° Π°Π΄Π°ΠΏΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ»Π°ΡΠΈΡΠ΅ΡΠΊΠΈΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π·Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π² ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΡΠ΅ΠΆΠΈΠΌ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΎΠΏΠΈΡΠ° ΡΠΈ ΠΎΡ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ Apache Spark ML, Apache Mahout, Apache Flink ML ΠΈ ΠΎΠΏΠΈΡΠ° ΠΎΡ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Apache Ignite ML. ΠΠ»Π΅ΠΊΡΠ΅ΠΉ ΡΡΡΠΎ ΡΠ΅ Π³ΠΎΠ²ΠΎΡΠΈ Π·Π° Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ML Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈ Π² ΡΠ΅Π·ΠΈ ΡΠ°ΠΌΠΊΠΈ.
Π Π½Π°ΠΊΡΠ°Ρ, Π΄Π²Π° Π΄ΠΎΠΊΠ»Π°Π΄Π° ΠΎΡ Yandex Π·Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π½Π° Yandex.
ΠΠ»Π°Π΄ΠΈΡΠ»Π°Π² ΠΡΠ·Π½Π΅ΡΠΎΠ² - Yandex Database - ΠΊΠ°ΠΊ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°ΠΌΠ΅ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ
ΠΠ»Π°Π΄ΠΈΡΠ»Π°Π² Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π² Yandex Π² Π³ΡΡΠΏΠ°ΡΠ° Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°. Yandex Database Π΅ Ρ
ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»Π½ΠΎ ΠΌΠ°ΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠ°, Π³Π΅ΠΎ-ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π°, ΡΡΡΠΎΠΉΡΠΈΠ²Π° Π½Π° Π³ΡΠ΅ΡΠΊΠΈ Π‘Π£ΠΠ, ΠΊΠΎΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΈΠ·Π΄ΡΡΠΆΠΈ ΠΎΡΠΊΠ°Π· Π½Π° Π΄ΠΈΡΠΊΠΎΠ²Π΅, ΡΡΡΠ²ΡΡΠΈ, ΡΡΠ΅Π»Π°ΠΆΠΈ ΠΈ ΡΠ΅Π½ΡΡΠΎΠ²Π΅ Π·Π° Π΄Π°Π½Π½ΠΈ, Π±Π΅Π· Π΄Π° Π³ΡΠ±ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»Π½ΠΎΡΡ. ΠΠ° ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½ Π°Π»Π³ΠΎΡΠΈΡΡΠΌ Π·Π° ΠΏΠΎΡΡΠΈΠ³Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡΡ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠ΅Π΄ΠΈΡΠ° ΡΠ΅Ρ
Π½ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΡΠ°Π·Π³Π»Π΅Π΄Π°Π½ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π² Π΄ΠΎΠΊΠ»Π°Π΄Π°. ΠΠΎΠΊΠ»Π°Π΄ΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ²Π° ΠΈΠ½ΡΠ΅ΡΠ΅Ρ ΠΊΠ°ΠΊΡΠΎ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° Π‘Π£ΠΠ, ΡΠ°ΠΊΠ° ΠΈ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ½ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Π‘Π£ΠΠ.
Π‘Π΅ΠΌΡΠΎΠ½ Π§Π΅ΡΠ΅ΡΠΈΠ½Π΄Π° - Π Π°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ Π² YDB
Π‘Π΅ΠΌΡΠΎΠ½ Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π² Π³ΡΡΠΏΠ°ΡΠ° Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π² Yandex, ΡΠ°Π±ΠΎΡΠ΅Ρ Π²ΡΡΡ Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ Π½Π° ΠΈΠ½ΡΡΠ°Π»Π°ΡΠΈΡΡΠ° Π½Π° YDB.
Yandex Database Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π·Π° OLTP Π·Π°ΡΠ²ΠΊΠΈ ΠΈ ΠΎΡΠ³ΠΎΠ²Π°ΡΡ Π½Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Π½ΠΈΡΡΠ° Π½Π° ACID Π·Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°. Π ΡΠΎΠ·ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ ΡΠ΅ ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Π°Π»Π³ΠΎΡΠΈΡΡΠΌΠ° Π·Π° ΠΏΠ»Π°Π½ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΊΠΎΠΉΡΠΎ Π΅ Π² ΠΎΡΠ½ΠΎΠ²Π°ΡΠ° Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ YDB. ΠΠ΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠΎΠΈ ΡΡΠ±Π΅ΠΊΡΠΈ ΡΡΠ°ΡΡΠ²Π°Ρ Π² ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈΡΠ΅, ΠΊΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Ρ Π³Π»ΠΎΠ±Π°Π»Π½ΠΈΡ ΡΠ΅Π΄ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈΡΠ΅, ΠΊΠ°ΠΊ ΡΠ΅ ΠΏΠΎΡΡΠΈΠ³Π° Π°ΡΠΎΠΌΠ°ΡΠ½ΠΎΡΡ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈΡΠ΅, Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡΡ ΠΈ ΡΡΡΠΎΠ³ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ. ΠΠ°ΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΡΠ΅ΡΡΠΎ ΡΡΠ΅ΡΠ°Π½ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΊΠ°ΡΠΎ ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈΡΠ΅ Π½Π° ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π΄Π²ΡΡΠ°Π·ΠΎΠ²ΠΈ Π°Π½Π³Π°ΠΆΠΈΠΌΠ΅Π½ΡΠΈ ΠΈ Π΄Π΅ΡΠ΅ΡΠΌΠΈΠ½ΠΈΡΡΠΈΡΠ½ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ. ΠΠ΅ΠΊΠ° ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΡ.
ΠΠ°ΠΊΠ²Π° Π΅ ΡΠ»Π΅Π΄Π²Π°ΡΠ°ΡΠ°?
ΠΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° Π½Π° ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π²Π° Ρ Π½ΠΎΠ²ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ΠΈ. ΠΠΎ-ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ, ΠΎΡΠ°ΠΊΠ²Π°ΠΌΠ΅ Π΄ΠΎΠΊΠ»Π°Π΄ ΠΎΡ ΠΠΈΠΊΠΈΡΠ° ΠΠΎΠ²Π°Π» (
ΠΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ° Hydra ΡΠ΅ ΡΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅ Π½Π° 11-12 ΡΠ»ΠΈ Π² Π‘Π°Π½ΠΊΡ ΠΠ΅ΡΠ΅ΡΠ±ΡΡΠ³. ΠΠΈΠ»Π΅ΡΠΈ ΡΠ° Π½Π°Π»ΠΈΡΠ½ΠΈ
Π©Π΅ ΡΠ΅ Π²ΠΈΠ΄ΠΈΠΌ Π² Hydra!
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com