ΠΡΠΈΡΠΊΠΈ ΠΎΠ±ΠΈΡΠ°ΠΌΠ΅ ΠΈΡΡΠΎΡΠΈΠΈ. ΠΠ±ΠΈΡΠ°ΠΌΠ΅ Π΄Π° ΡΠ΅Π΄ΠΈΠΌ ΠΎΠΊΠΎΠ»ΠΎ ΠΎΠ³ΡΠ½Ρ ΠΈ Π΄Π° Π³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° Π½Π°ΡΠΈΡΠ΅ ΠΌΠΈΠ½Π°Π»ΠΈ ΠΏΠΎΠ±Π΅Π΄ΠΈ, Π±ΠΈΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ Π·Π° Π½Π°ΡΠΈΡ ΡΡΡΠ΄ΠΎΠ² ΠΎΠΏΠΈΡ.
ΠΠ½Π΅Ρ Π΅ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊΡΠ² Π΄Π΅Π½. Π Π΄ΠΎΡΠΈ Π΄Π° Π½Π΅ ΡΡΠ΅ Π΄ΠΎ ΠΎΠ³ΡΠ½Ρ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ°, ΠΈΠΌΠ°ΠΌΠ΅ ΠΈΡΡΠΎΡΠΈΡ Π·Π° Π²Π°Ρ. ΠΡΡΠΎΡΠΈΡΡΠ° Π·Π° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ Π·Π°ΠΏΠΎΡΠ½Π°Ρ ΠΌΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈΠΌ ΡΡΡ ΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ Π½Π° Tarantool.
ΠΠΌΠ°Π»ΠΎ Π΅Π΄Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΈΠΌΠ°ΡΠ΅ Π½ΡΠΊΠΎΠ»ΠΊΠΎ βΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ°β ΠΈ Π΅Π΄ΠΈΠ½ βΡΠ°Π²Π°Π½β Π·Π° Π²ΡΠΈΡΠΊΠΈ, ΠΊΡΠΌ ΠΊΠΎΠΉΡΠΎ ΡΠ΅Π·ΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠΈ Π±Π°Π²Π½ΠΎ, Π½ΠΎ ΡΠΈΠ³ΡΡΠ½ΠΎ ΡΠ΅ ΠΏΡΠΈΠ±Π»ΠΈΠΆΠ°Π²Π°Ρ
Π°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°ΠΉΠΊΠΈ ΠΏΠΎΠ»Π΅ΡΠ° Π½Π° Π½Π°ΡΠ°ΡΠ° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ, Π½Π°ΡΠ΅ΡΠΎ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅. Π ΠΈΠΌΠ°ΡΠ΅ ΡΡΠ½ΠΎΡΠΎ ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅: Π΅Π΄ΠΈΠ½ Π΄Π΅Π½ ΡΠ΅ ΡΠ΄Π°ΡΠΈΠΌ Π·Π΄ΡΠ°Π²ΠΎ ΡΠΎΠ·ΠΈ ΡΠ°Π²Π°Π½.
Π‘Π΅Π³Π° Π΅ ΠΏΡΠ΅ΠΎΠ±Π»Π°Π΄Π°Π²Π°ΡΠ°ΡΠ° ΠΈΠ΄Π΅ΠΎΠ»ΠΎΠ³ΠΈΡ Π·Π° ΡΠ°Π·Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π²ΡΠΈΡΠΊΠΎ ΠΈ Π²ΡΠΈΡΠΊΠΈ, ΠΎΡ ΠΎΠ±ΠΎΡΡΠ΄Π²Π°Π½Π΅ΡΠΎ Π΄ΠΎ Π±ΠΈΠ·Π½Π΅Ρ Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ°. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° Π½ΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠΌΠ°ΠΌΠ΅ Π΄Π²Π° DC, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΈ Π½Π° Π½ΠΈΠ²ΠΎ ΠΌΡΠ΅ΠΆΠ°. Π ΡΠΎΠ³Π°Π²Π° Π²ΡΠΈΡΠΊΠΎ Π±Π΅ΡΠ΅ ΡΡΠ²ΡΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ.
ΠΠ½Π΅Ρ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° CI/CD, K8S ΠΈ Π΄Ρ. Π βΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΠΎΡΠΎβ Π²ΡΠ΅ΠΌΠ΅ Π½ΡΠΌΠ°Ρ ΠΌΠ΅ Π½ΡΠΆΠ΄Π° ΠΎΡ ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠΆΠ΄ΠΈ Π΄ΡΠΌΠΈ. ΠΠ΅ΡΠ΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ° βΡΡΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΡΠΎβ Π² Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ.
ΠΠΎ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π½Π°ΠΏΡΠ΅Π΄Π²Π°ΡΠ΅ ΠΈ Π±ΡΠΎΡΡ Π½Π° Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π½Π°ΠΏΡΠ΅Π΄Π²Π°ΡΠ΅ Π·Π°Π΅Π΄Π½ΠΎ Ρ Π½Π΅Π³ΠΎ, ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΠΈΠ·ΡΡΡΠ΅Π»Π²Π°ΠΉΠΊΠΈ RPS ΠΈΠ·Π²ΡΠ½ Π½Π°ΡΠΈΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ. Π‘ Π½Π°Π²Π»ΠΈΠ·Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΎΡ ΠΠΠ Π½Π° ΠΏΠ°Π·Π°ΡΠ°, Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° Π½Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ Π½Π° ΠΏΡΡΠ²ΠΈΡ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ Π½Π΅ ΠΏΠ°Π΄Π½Π° ΠΏΠΎΠ΄ 90%, Π° RPS ΠΎΡΡΠ°Π½Π° Π½Π° Π½ΠΈΠ²ΠΎ 2400. Π ΡΠΎΠ²Π° Π½Π΅ Π±ΡΡ Π° ΠΏΡΠΎΡΡΠΎ ΠΌΠ°Π»ΠΊΠΈ ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠΈ, Π° ΡΠ΅ΠΆΠΊΠΈ Π·Π°ΡΠ²ΠΊΠΈ Ρ ΠΊΡΠΏ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ JOINs, ΠΊΠΎΠΈΡΠΎ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ°Π±ΠΎΡΡΡ Π·Π° ΠΏΠΎΡΡΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°ΡΠ° ΠΎΡ Π΄Π°Π½Π½ΠΈΡΠ΅ Π½Π° ΡΠΎΠ½Π° Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ IO.
ΠΠΎΠ³Π°ΡΠΎ Π½Π° ΡΡΠ΅Π½Π°ΡΠ° Π·Π°ΠΏΠΎΡΠ½Π°Ρ
Π° Π΄Π° ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ ΠΏΡΠ»Π½ΠΎΡΠ΅Π½Π½ΠΈ ΡΠ°Π·ΠΏΡΠΎΠ΄Π°ΠΆΠ±ΠΈ Π½Π° Π§Π΅ΡΠ½ΠΈΡ ΠΏΠ΅ΡΡΠΊ - ΠΈ Wildberries Π±Π΅ΡΠ΅ Π΅Π΄ΠΈΠ½ ΠΎΡ ΠΏΡΡΠ²ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ Π³ΠΈ ΠΏΡΠΎΠ²Π΅Π΄ΠΎΡ
Π° Π² Π ΡΡΠΈΡ - ΡΠΈΡΡΠ°ΡΠΈΡΡΠ° ΡΡΠ°Π½Π° Π½Π°ΠΏΡΠ»Π½ΠΎ ΡΡΠΆΠ½Π°. Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π² ΡΠ°ΠΊΠΈΠ²Π° Π΄Π½ΠΈ ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π° ΡΡΠΈ ΠΏΡΡΠΈ.
Π, ΡΠ΅Π·ΠΈ βΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π°β! Π‘ΠΈΠ³ΡΡΠ΅Π½ ΡΡΠΌ, ΡΠ΅ ΡΡΠ΅ ΠΏΡΠ΅ΠΆΠΈΠ²Π΅Π»ΠΈ Π½Π΅ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ ΠΈ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅ ΠΊΠ°ΠΊ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π²ΠΈ ΡΠ΅ ΡΠ»ΡΡΠΈ.
ΠΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΡ - ΠΌΠΎΠ΄Π°ΡΠ° Π΅ ΠΏΡΠΈΡΡΡΠ° Π½Π° ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡΠ΅. ΠΡΠ΅Π΄ΠΈ ΠΎΠΊΠΎΠ»ΠΎ 5 Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΡΡΡΠ±Π²Π°ΡΠ΅ Π΄Π° ΠΏΡΠ΅ΠΎΡΠΌΠΈΡΠ»ΠΈΠΌ Π΅Π΄ΠΈΠ½ ΠΎΡ ΡΠ΅Π·ΠΈ ΠΌΠΎΠ΄ΠΎΠ²Π΅ ΠΏΠΎΠ΄ ΡΠΎΡΠΌΠ°ΡΠ° Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ ΡΠ°ΠΉΡ Π½Π° .NET ΠΈ MS SQL ΡΡΡΠ²ΡΡ, ΠΊΠΎΠΉΡΠΎ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ ΡΡΡ
ΡΠ°Π½ΡΠ²Π°ΡΠ΅ ΡΡΠ»Π°ΡΠ° Π»ΠΎΠ³ΠΈΠΊΠ° Π½Π° ΡΠ°ΠΌΠΈΡ ΡΠ°ΠΉΡ. ΠΠ°Π·Π΅Ρ
Π³ΠΎ ΡΠΎΠ»ΠΊΠΎΠ²Π° Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ, ΡΠ΅ ΡΡΠ·Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°ΠΊΡΠ² ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ ΡΠ΅ ΠΎΠΊΠ°Π·Π° Π΄ΡΠ»Π³ΠΎ ΠΈ Π½ΠΈΠΊΠ°ΠΊ Π»Π΅ΡΠ½ΠΎ ΡΠ΄ΠΎΠ²ΠΎΠ»ΡΡΠ²ΠΈΠ΅.
ΠΠ°Π»ΠΊΠΎ ΠΎΡΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅.
ΠΠ° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΠ±ΠΈΡΠΈΡ ΠΊΠ°Π·Π²Π°ΠΌ: βΠ°ΠΊΠΎ Π½Π΅ ΡΡΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ, Π·Π½Π°ΡΠΈ Π½Π΅ ΡΡΠ΅ ΠΈΠ·ΡΠ°ΡΠ½Π°Π»ΠΈ!β ΠΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π°ΠΌ ΡΠ΅ ΠΎΡ Π²Π°ΡΠ΅ΡΠΎ ΠΌΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π²ΡΠΏΡΠΎΡ, ΠΌΠΎΠ»Ρ, Π½Π°ΠΏΠΈΡΠ΅ΡΠ΅ Π³ΠΎ Π² ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠ΅.
ΠΠ²ΡΠΊ ΠΎΡ Π³ΡΡΠΌ
ΠΠ° ΡΠ΅ ββΠ²ΡΡΠ½Π΅ΠΌ ΠΊΡΠΌ Π½Π°ΡΠΈΡ "ΠΎΠ³ΡΠ½". ΠΠ° Π΄Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° βΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½Π°ΡΠ°β ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ, ΡΠ΅ΡΠΈΡ ΠΌΠ΅ Π΄Π° ΡΠ°Π·Π΄Π΅Π»ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π½Π° ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Ρ ΠΎΡΠ²ΠΎΡΠ΅Π½ ΠΊΠΎΠ΄. ΠΠ°ΡΠΎΡΠΎ ΠΊΠ°ΡΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΠ΅ ΡΠ° ΠΏΠΎ-Π΅Π²ΡΠΈΠ½ΠΈ Π·Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅. Π ΠΈΠΌΠ°Ρ ΠΌΠ΅ 100% ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅, ΡΠ΅ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°ΠΌΠ΅ (ΠΈ ΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ). Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π²Π΅ΡΠ΅ Π±Π΅ΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ Π½Π°Π²Π»Π΅Π·Π΅ Π½Π° ΠΏΠ°Π·Π°ΡΠΈΡΠ΅ Π½Π° ΡΡΡΠ΅Π΄Π½ΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈ ΠΈ Π±ΡΠΎΡΡ Π½Π° ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΈΡΠ΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π±ΡΠΎΡΡ Π½Π° ΠΏΠΎΡΡΡΠΊΠΈΡΠ΅, Π·Π°ΠΏΠΎΡΠ½Π°Ρ Π° Π΄Π° ΡΠ°ΡΡΠ°Ρ ΠΎΡΠ΅ ΠΏΠΎ-ΡΠΈΠ»Π½ΠΎ.
Π‘Π»Π΅Π΄ ΠΊΠ°ΡΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°Ρ ΠΌΠ΅ ΠΏΡΡΠ²ΠΈΡΠ΅ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΠΈ Π·Π° Π½Π°ΠΏΡΡΠΊΠ°Π½Π΅ Π½Π° ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ° ΠΊΡΠΌ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈΡΠ΅, ΡΠ°Π·Π±ΡΠ°Ρ ΠΌΠ΅, ΡΠ΅ 80% ΠΎΡ ΠΏΠΈΡΠ°Π½Π΅ΡΠΎ Π² ΡΡΡ ΠΈΠ΄Π²Π° ΠΎΡ Π±Π΅ΠΊ ΠΎΡΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ ΠΈ ΡΠ΅ΡΠ΅Π½Π΅ΡΠΎ ΠΎΡ ΡΡΠΎΠ½Ρ ΠΎΡΠΈΡΠ°. ΠΠ° ΠΏΡΡΠ²ΠΎ ΠΌΡΡΡΠΎ, ΡΠΎΠ²Π° ΡΠ΅ ΠΎΡΠ½Π°ΡΡΡΠ΅ Π΄ΠΎ Π½ΡΠΊΠΎΠ»ΠΊΠΎ Π²Π°ΠΆΠ½ΠΈ Π·Π° Π½Π°Ρ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΈ - ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΡΡΠΎΠΊΠΈΡΠ΅ Π²ΡΠ· ΠΎΡΠ½ΠΎΠ²Π° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ ΠΎΡΡΡΡΠΏΠΊΠΈ ΠΈ ΠΊΡΠΏΠΎΠ½ΠΈ.
Π‘ ΠΎΡΡΡΡΠΏ. Π‘Π΅Π³Π° Π΅ ΡΡΡΠ°ΡΠ½ΠΎ Π΄Π° ΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ, Π½ΠΎ Π² Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ Π³ΠΎΡΠ΅ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈΡΠ΅ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ·ΠΈ, ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠ° ΠΊΠΎΠ»ΠΈΡΠΊΠ° Π·Π° ΠΏΠ°Π·Π°ΡΡΠ²Π°Π½Π΅, ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΡΡΡΡΠ΅Π½Π΅ Π½Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΈ, ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΡΠΈΠ»ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠ²ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ·ΠΈ ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΏΡΠ΅ΠΏΠΎΡΡΠΊΠΈ ΡΡΡΠΎ Π±ΡΡ Π° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠΈ ΠΎΡ Π½Π°ΡΠΈΡ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ. ΠΠ° ΡΡΠ½ΠΊΡΠΈΠΎΠ½ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π²ΡΡΠΊΠ° ΠΎΡ ΡΡΡ ΠΈΠΌΠ° ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΠΊΠ»Π°ΡΠΎΠ²Π΅ ΡΡΡΠ½ΠΎ ΡΠΊΡΠΎΠ΅Π½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ, Π½ΠΎ Π½ΡΠΊΠΎΠ³Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ° ΠΆΠΈΠ²Π΅Π»ΠΈ Π² Π΅Π΄Π½Π° βΠΊΡΡΠ°β.
ΠΠ΅Π΄Π½Π°Π³Π° ΠΏΠ»Π°Π½ΠΈΡΠ°Ρ ΠΌΠ΅ Π΄Π° ΠΏΡΠ΅Ρ Π²ΡΡΠ»ΠΈΠΌ Π΄Π°Π½Π½ΠΈ Π·Π° Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ ΠΊΡΠΌ ΡΠ°ΡΠ΄ΠΈΡΠ°Π½Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°. ΠΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΡΡΠΎΠΊΠΈΡΠ΅ ΠΈΠ·ΠΈΡΠΊΠ²Π°ΡΠ΅ Π΄ΠΎΠ±ΡΠ° ΡΠΊΠ°Π»ΠΈΡΡΠ΅ΠΌΠΎΡΡ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ Π½Π°ΠΉ-Π³ΠΎΠ»ΡΠΌΠΎ RPS Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ ΠΈ Π±Π΅ΡΠ΅ Π½Π°ΠΉ-ΡΡΡΠ΄Π½ΠΎ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π° Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ (ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π°Π½Π½ΠΈ ΡΡΠ°ΡΡΠ²Π°Ρ Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΠ΅).
Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΠΈΠ·ΠΌΠΈΡΠ»ΠΈΡ ΠΌΠ΅ ΡΡ Π΅ΠΌΠ°, ΠΊΠΎΡΡΠΎ ΠΏΠ°ΡΠ²Π° Π΄ΠΎΠ±ΡΠ΅ Π½Π° Tarantool.
ΠΠΎ ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ Π·Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈΡΠ΅ Π±ΡΡ Π° ΠΈΠ·Π±ΡΠ°Π½ΠΈ ΡΡ Π΅ΠΌΠΈ Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΡΠ΅Π½ΡΡΡΠ° Π·Π° Π΄Π°Π½Π½ΠΈ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΈ Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ. ΠΠ°ΠΊΡΠΎ Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° ΡΠΈΠ³ΡΡΠΈΡΠ΅, ΠΎΠΏΡΠΈΠΈΡΠ΅ Π·Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Π½Π° Tarantool Π±ΡΡ Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈ ΠΊΠ°ΠΊΡΠΎ Π² ΡΠ΅ΠΆΠΈΠΌΠΈΡΠ΅ master-master, ΡΠ°ΠΊΠ° ΠΈ Π² ΡΠ΅ΠΆΠΈΠΌ master-slave.
ΠΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°. ΠΠ°ΡΠΈΠ°Π½Ρ 1. ΠΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠ° ΡΡΠ»ΡΠ³Π°
Π ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΠΌΠ° 24 ΡΠ°ΡΠ΄Π°, Π²ΡΠ΅ΠΊΠΈ ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΠΈΠΌΠ° 2 Π΅ΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° (ΠΏΠΎ Π΅Π΄ΠΈΠ½ Π·Π° Π²ΡΠ΅ΠΊΠΈ DC), Π²ΡΠΈΡΠΊΠΈ Π² ΡΠ΅ΠΆΠΈΠΌ master-master.
ΠΡΡΡ Ρ Π±Π°Π·Π°ΡΠ° Π΄Π°Π½Π½ΠΈ ΠΈΠΌΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΠΈΠΌΠ°Ρ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ° ΡΠ°Π±ΠΎΡΡΡ Ρ Tarantool ΡΡΠ΅Π· Π½Π°ΡΠ°ΡΠ° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΊΠΎΡΡΠΎ ΠΈΠΌΠΏΠ»Π΅ΠΌΠ΅Π½ΡΠΈΡΠ° ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π½Π° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Tarantool Go. Π’Ρ Π²ΠΈΠΆΠ΄Π° Π²ΡΠΈΡΠΊΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ°Π±ΠΎΡΠΈ Ρ ΠΌΠ°ΠΉΡΡΠΎΡΠ°, Π·Π° Π΄Π° ΡΠ΅ΡΠ΅ ΠΈ ΠΏΠΈΡΠ΅. ΠΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΠΉ ΠΏΡΠΈΠ»Π°Π³Π° ΠΌΠΎΠ΄Π΅Π»Π° Π½Π° Π½Π°Π±ΠΎΡ ΠΎΡ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ, ΠΊΠΎΠΉΡΠΎ Π΄ΠΎΠ±Π°Π²Ρ Π»ΠΎΠ³ΠΈΠΊΠ° Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ, ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΈ ΠΎΠΏΠΈΡΠΈ, ΠΏΡΠ΅ΠΊΡΡΠ²Π°Ρ Π½Π° Π²Π΅ΡΠΈΠ³Π°ΡΠ° ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΊΠΎΡΠΎΡΡΡΠ°.
Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ° ΠΏΠΎΠ»ΠΈΡΠΈΠΊΠ°ΡΠ° Π·Π° ΠΈΠ·Π±ΠΎΡ Π½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ° Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΡΡΠ³ΡΠ» ΡΠΎΠ±ΠΈΠ½.
ΠΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ°. ΠΠ°ΡΠΈΠ°Π½Ρ 2. Π£ΡΠ»ΡΠ³Π° Π·Π° ΠΊΠ°Π»ΠΊΡΠ»ΠΈΡΠ°Π½Π΅ Π½Π° ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΡΡΠΎΠΊΠΈΡΠ΅
ΠΡΠ΅Π΄ΠΈ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΌΠ΅ΡΠ΅ΡΠ° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΎΡ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π·Π° ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΡΡΠΎΠΊΠΈΡΠ΅ ΠΎΡΠΈΠ΄ΠΎΡ Π° Π² Π½ΠΎΠ²Π° ΡΡΠ»ΡΠ³Π°, ΠΊΠΎΡΡΠΎ ΠΏΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠ°Π±ΠΎΡΠΈ Π±Π΅Π· Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΈ Π²ΡΠ΅ΠΌΠ΅ Π²ΡΠΈΡΠΊΠΎ Π±Π΅ΡΠ΅ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ΅Π½ΠΎ Π½Π° 100% ΠΎΡ ΡΡΠ»ΡΠ³Π° Ρ Tarantool ΠΏΠΎΠ΄ ΠΊΠ°ΠΏΠ°ΠΊΠ°.
Π‘Π΅ΡΠ²ΠΈΠ·Π½Π°ΡΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΡΠ΅ ΡΡΡΡΠΎΠΈ ΠΎΡ 4 Π³Π»Π°Π²Π½ΠΈ, Π² ΠΊΠΎΠΈΡΠΎ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΎΡΡΡ ΡΡΠ±ΠΈΡΠ° Π΄Π°Π½Π½ΠΈ, ΠΈ Π²ΡΡΠΊΠ° ΠΎΡ ΡΠ΅Π·ΠΈ Π³Π»Π°Π²Π½ΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Ρ Π΄Π°Π½Π½ΠΈ ΠΊΡΠΌ ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ ΡΠ°ΠΌΠΎ Π·Π° ΡΠ΅ΡΠ΅Π½Π΅. ΠΡΠ΅ΠΊΠΈ ΠΌΠ°ΠΉΡΡΠΎΡ ΠΈΠΌΠ° ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»Π½ΠΎ 15 ΡΠ°ΠΊΠΈΠ²Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠΈ.
ΠΠ»ΠΈ Π² ΠΏΡΡΠ²Π°ΡΠ°, ΠΈΠ»ΠΈ Π²ΡΠ² Π²ΡΠΎΡΠ°ΡΠ° ΡΡ Π΅ΠΌΠ°, Π°ΠΊΠΎ Π΅Π΄ΠΈΠ½ DC Π΅ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ»ΡΡΠ°Π²Π° Π΄Π°Π½Π½ΠΈ Π²ΡΠ² Π²ΡΠΎΡΠΈΡ.
Π‘ΡΡΡΠ²Π° ΡΠΈ Π΄Π° ΡΠ΅ ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈ, ΡΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ° Π² Tarantool Π΅ Π΄ΠΎΡΡΠ° Π³ΡΠ²ΠΊΠ°Π²Π° ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ° ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅. Π Π΄ΡΡΠ³ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ Π° ΡΡΡΠ΄Π½ΠΎΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠΌΡΠ½Π°ΡΠ° Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΡΠ΅ max_wal_senders ΠΈ max_replication_slots Π² PostgreSQL ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ²Π΅ΡΠ½ΠΈΠΊΠ°, ΠΊΠΎΠ΅ΡΠΎ Π² Π½ΡΠΊΠΎΠΈ ΡΠ»ΡΡΠ°ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ ΠΏΡΠ΅ΠΊΡΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΡΠ·ΠΊΠΈΡΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ ΠΈ Π‘Π£ΠΠ.
Π’ΡΡΡΠ΅ΡΠ΅ ΠΈ ΡΠ΅ Π½Π°ΠΌΠ΅ΡΠΈΡΠ΅!
ΠΠ°ΡΠΎ Π½Π΅ Π³ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡ ΠΌΠ΅ βΠΊΠ°ΡΠΎ Π½ΠΎΡΠΌΠ°Π»Π½ΠΈΡΠ΅ Ρ ΠΎΡΠ°β, Π° ΠΈΠ·Π±ΡΠ°Ρ ΠΌΠ΅ Π½Π΅ΡΠΈΠΏΠΈΡΠ΅Π½ Π½Π°ΡΠΈΠ½? ΠΠ°Π²ΠΈΡΠΈ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΡΠΈΡΠ° Π·Π° Π½ΠΎΡΠΌΠ°Π»Π½ΠΎ. ΠΠ½ΠΎΠ³ΠΎ Ρ ΠΎΡΠ° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΠΏΡΠ°Π²ΡΡ ΠΊΠ»ΡΡΡΠ΅Ρ ΠΎΡ Mongo ΠΈ Π³ΠΎ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π°Ρ Π² ΡΡΠΈ Π³Π΅ΠΎΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ DC.
ΠΠΎ ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ Π²Π΅ΡΠ΅ ΠΈΠΌΠ°Ρ ΠΌΠ΅ Π΄Π²Π° Redis ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΡΠ²ΠΈΡΡ Π±Π΅ΡΠ΅ ΠΊΠ΅Ρ, Π° Π²ΡΠΎΡΠΈΡΡ Π±Π΅ΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π·Π° Π½Π΅ ΡΠ²ΡΡΠ΄Π΅ ΠΊΡΠΈΡΠΈΡΠ½ΠΈ Π΄Π°Π½Π½ΠΈ. ΠΠ΅ΡΠ΅ Π΄ΠΎΡΡΠ° ΡΡΡΠ΄Π½ΠΎ Ρ Π½Π΅Π³ΠΎ, Π΄ΠΎΠ½ΡΠΊΡΠ΄Π΅ ΠΈ ΠΏΠΎ Π½Π°ΡΠ° Π²ΠΈΠ½Π°. ΠΠΎΠ½ΡΠΊΠΎΠ³Π° Π΄ΠΎΡΡΠ° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΎΠ±Π΅ΠΌΠΈ Π±ΡΡ Π° Π² ΠΊΠ»ΡΡΠ° ΠΈ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ ΡΠ°ΠΉΡΡΡ ΡΠ΅ ΡΠ°Π·Π±ΠΎΠ»ΡΠ²Π°ΡΠ΅. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ ΡΠ°Π·ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΠ² Π²Π΅ΡΡΠΈΡΡΠ° master-slave. Π ΠΈΠΌΠ°ΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π°ΡΠΎ Π½Π΅ΡΠΎ ΡΠ΅ ΡΠ»ΡΡΠΈ Ρ ΠΌΠ°ΡΡΡΡΠ° ΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ° ΡΠ΅ ΠΏΠΎΠ²ΡΠ΅Π΄ΠΈ.
Π’ΠΎΠ΅ΡΡ Redis Π΅ Π΄ΠΎΠ±ΡΡ Π·Π° Π·Π°Π΄Π°ΡΠΈ Π±Π΅Π· ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, Π° Π½Π΅ Π·Π° ΡΠ°ΠΊΠΈΠ²Π° ΡΡΡ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅. ΠΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΡΠΎΠ²Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠ΅ΡΠ°Π²Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ, Π½ΠΎ ΡΠ°ΠΌΠΎ Π°ΠΊΠΎ ΡΠ΅ ΡΠ° ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡ-ΡΡΠΎΠΉΠ½ΠΎΡΡ Ρ Π΄Π²ΠΎΠΉΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΈ. ΠΠΎ Redis ΠΏΠΎ ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ Π±Π΅ΡΠ΅ Π΄ΠΎΡΡΠ° ΡΡΠΆΠ΅Π½ Ρ ΠΏΠΎΡΡΠΎΡΠ½ΡΡΠ²ΠΎΡΠΎ ΠΈ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ°. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΈΠΌΠ°ΡΠ΅ ΠΎΠΏΠ»Π°ΠΊΠ²Π°Π½ΠΈΡ ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ°.
ΠΠΈΡΠ»Π΅Ρ
ΠΌΠ΅ Π·Π° MySQL ΠΈ PostgreSQL. ΠΠΎ ΠΏΡΡΠ²ΠΈΡΡ Π½ΡΠΊΠ°ΠΊ ΡΠΈ Π½Π΅ Π½ΠΈ Ρ
Π²Π°Π½Π°, Π° Π²ΡΠΎΡΠΈΡΡ ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅ ΡΠΈ Π΅ Π΄ΠΎΡΡΠ° ΡΠ»ΠΎΠΆΠ΅Π½ ΠΏΡΠΎΠ΄ΡΠΊΡ ΠΈ Π±ΠΈ Π±ΠΈΠ»ΠΎ Π½Π΅ΡΠΌΠ΅ΡΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Ρ ΠΏΡΠΎΡΡΠΈ ΡΡΠ»ΡΠ³ΠΈ Π²ΡΡΡ
Ρ Π½Π΅Π³ΠΎ.
ΠΠΏΠΈΡΠ°Ρ
ΠΌΠ΅ RIAK, Cassandra, Π΄ΠΎΡΠΈ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Ρ Π³ΡΠ°ΡΠΈΠΊΠΈ. Π’ΠΎΠ²Π° ΡΠ° Π΄ΠΎΡΡΠ° Π½ΠΈΡΠΎΠ²ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ Π½Π΅ ΡΠ° ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΡΡΠΈ Π·Π° ΡΠΎΠ»ΡΡΠ° Π½Π° ΠΎΠ±Ρ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π΅Π½ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡΠ»ΡΠ³ΠΈ.
Π ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° ΡΠ΅ ΡΠΏΡΡΡ ΠΌΠ΅ Π½Π° Tarantool.
ΠΠ±ΡΡΠ½Π°Ρ ΠΌΠ΅ ΡΠ΅ ΠΊΡΠΌ Π½Π΅Π³ΠΎ, ΠΊΠΎΠ³Π°ΡΠΎ Π±Π΅ΡΠ΅ Π²ΡΠ² Π²Π΅ΡΡΠΈΡ 1.6. ΠΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π°Ρ ΠΌΠ΅ ΡΠ΅ ΠΎΡ ΡΠΈΠΌΠ±ΠΈΠΎΠ·Π°ΡΠ° Π½Π° ΠΊΠ»ΡΡ-ΡΡΠΎΠΉΠ½ΠΎΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Π½Π° ΡΠ΅Π»Π°ΡΠΈΠΎΠ½Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. ΠΠΌΠ° Π²ΡΠΎΡΠΈΡΠ½ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΈ ΠΈ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°, ΡΠ΅ ΡΠ° ΠΊΠ°ΡΠΎ ΡΠ°Π±Π»ΠΈΡΠΈ, Π½ΠΎ Π½Π΅ ΡΠ° ΠΏΡΠΎΡΡΠΈ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ ΡΠ°Π·Π»ΠΈΡΠ΅Π½ Π±ΡΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΈ Π² ΡΡΡ . ΠΠΎ ΡΠ±ΠΈΠΉΡΡΠ²Π΅Π½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π½Π° Tarantool Π±ΡΡ Π° Π²ΡΠΎΡΠΈΡΠ½ΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½ΠΈ Ρ ΠΊΠ»ΡΡ-ΡΡΠΎΠΉΠ½ΠΎΡΡ ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΠΎΡΡ.
ΠΡΠ·ΠΈΠ²ΡΠΈΠ²Π°ΡΠ° ΡΡΡΠΊΠΎΠ΅Π·ΠΈΡΠ½Π° ΠΎΠ±ΡΠ½ΠΎΡΡ, Π³ΠΎΡΠΎΠ²Π° Π΄Π° ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π² ΡΠ°ΡΠ°, ΡΡΡΠΎ ΠΈΠ·ΠΈΠ³ΡΠ° ΡΠΎΠ»Ρ. ΠΠΈΠ΅ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅ ΡΠΎΠ²Π° ΠΈ ΠΆΠΈΠ²Π΅Π΅ΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² ΡΠ°ΡΠ°. Π Π½Π΅ Π·Π°Π±ΡΠ°Π²ΡΠΉΡΠ΅ Π·Π° ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΡΡΠΎΡΠ½ΡΡΠ²ΠΎ Π±Π΅Π· ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΈ Π³Π°ΡΠΎΠ²Π΅ ΠΈ Π³ΡΠ΅ΡΠΊΠΈ. ΠΠΊΠΎ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π΅ΡΠ΅ Π½Π°ΡΠ°ΡΠ° ΠΈΡΡΠΎΡΠΈΡ Ρ Tarantool, ΠΈΠΌΠ°Ρ ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΠΊΠ° ΠΈ Π½Π΅ΡΡΠΏΠ΅Ρ ΠΈ Ρ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ°, Π½ΠΎ Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ ΡΠΌΠ΅ Π³ΡΠ±ΠΈΠ»ΠΈ Π΄Π°Π½Π½ΠΈ ΠΏΠΎ Π½Π΅Π³ΠΎΠ²Π° Π²ΠΈΠ½Π°!
ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π·Π°ΠΏΠΎΡΠ½Π° ΡΡΡΠ΄Π½ΠΎ
ΠΠΎ ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΈΡΡ Π½ΠΈ ΡΡΠ΅ΠΊ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° Π±Π΅ΡΠ΅ .NET, ΠΊΡΠΌ ΠΊΠΎΠΉΡΠΎ Π½ΡΠΌΠ°ΡΠ΅ ΠΊΠΎΠ½Π΅ΠΊΡΠΎΡ Π·Π° Tarantool. ΠΠ΅Π΄Π½Π°Π³Π° Π·Π°ΠΏΠΎΡΠ½Π°Ρ ΠΌΠ΅ Π΄Π° ΠΏΡΠ°Π²ΠΈΠΌ Π½Π΅ΡΠΎ Π² Go. Π Π°Π±ΠΎΡΠΈ Π΄ΠΎΠ±ΡΠ΅ ΠΈ Ρ Lua. ΠΡΠ½ΠΎΠ²Π½ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΠΎ ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ Π±Π΅ΡΠ΅ Ρ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ: Π² .NET Π²ΡΠΈΡΠΊΠΎ Π΅ ΡΡΡΠ°Ρ ΠΎΡΠ½ΠΎ Ρ ΡΠΎΠ²Π°, Π½ΠΎ ΡΠ»Π΅Π΄ ΡΠΎΠ²Π° Π±Π΅ΡΠ΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΡΠ΅ ΠΏΠΎΡΠΎΠΏΠΈΡΠ΅ Π² ΡΠ²Π΅ΡΠ° Π½Π° Π²Π³ΡΠ°Π΄Π΅Π½Π°ΡΠ° Lua, ΠΊΠΎΠ³Π°ΡΠΎ Π½ΡΠΌΠ°ΡΠ΅ ΠΎΡΡΡΡΠ°Π½ΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ, ΠΎΡΠ²Π΅Π½ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΈΡΠΈΠ½Π° ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ° ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ½ΠΎ ΡΠ΅ ΡΠ°Π·ΠΏΠ°Π΄Π°ΡΠ΅, ΡΠ°ΠΊΠ° ΡΠ΅ ΡΡΡΠ±Π²Π°ΡΠ΅ Π΄Π° ΡΠ΅ ΡΠΎΠ²Ρ Π² ΡΡΡΡΠΊΡΡΡΠ°ΡΠ° Π½Π° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ Π½Π° Tarantool. Π§Π°ΡΡΡ ΠΏΠΎΠΌΠΎΠ³Π½Π° Π·Π° ΡΠΎΠ²Π° ΠΈ Π² ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠ° ΡΡΠ΅ΠΏΠ΅Π½ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°; ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Ρ ΠΌΠ΅ ΠΊΠΎΠ΄Π°. ΠΠΎ ΡΠΎΠ²Π° Π²ΡΠ΅ΠΌΠ΅ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π±Π΅ΡΠ΅ ΡΠ°ΠΊΠ°, ΡΠ°ΠΊΠ°.
Π ΡΠ°ΠΊΠ°, Π² ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΌΠ΅ΡΠ΅ΡΠ° ΡΡΠΏΡΡ Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠ°ΠΌ ΠΈ Π΄Π° ΠΏΠΎΡΡΠΈΠ³Π½Π° ΠΏΡΠΈΠ»ΠΈΡΠ½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ ΠΎΡ ΡΠ°Π±ΠΎΡΠ°ΡΠ° Ρ Tarantool. ΠΠΎΠΌΠΏΠΈΠ»ΠΈΡΠ°Ρ ΠΌΠ΅ ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² git, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π½Π°Ρ Π° Π·Π° ΡΠΎΡΠΌΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²ΠΈ ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π°ΡΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ½Π° Π·Π°Π΄Π°ΡΠ°: Π΄Π° ΡΠ΅ ΡΡΠ·Π΄Π°Π΄Π΅ Π΄ΡΡΠ³Π° ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³Π°, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡΡ ΠΏΠΎΠ³Π»Π΅Π΄Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ Π½Π° ΡΠ΅ΡΠ΅ΡΠ΅Π½ΡΠ½ΠΎΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ΡΠΎ ΠΈ Π½Π΅ ΠΎΡΠ½Π΅ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΡΠ΅Π΄ΠΌΠΈΡΠ°, Π·Π° Π΄Π° ΡΡΠ·Π΄Π°Π΄Π΅ Π½ΠΎΠ²Π°.
Π’ΠΎΠ²Π° Π±ΡΡ Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΈ Π²ΡΠ΅ΠΌΠ΅Π½Π°. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠΎΠ³Π°Π²Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΡΠΈΠ΄Π΅ΡΠ΅ Π΄ΠΎ Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠ° Π½Π° ΡΡΡΠ΅Π΄Π½Π°ΡΠ° ΠΌΠ°ΡΠ° ΠΈ Π΄Π° ΠΏΠΎΠΏΠΈΡΠ°ΡΠ΅: βΠΠ°ΠΉΡΠ΅ ΠΌΠΈ Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π°.β ΠΠΊΠΎΠ»ΠΎ ΡΡΠΈΠ΄Π΅ΡΠ΅Ρ ΠΌΠΈΠ½ΡΡΠΈ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ ΠΊΠΎΠ»Π°ΡΠ° Π²Π΅ΡΠ΅ Π±Π΅ΡΠ΅ ΠΏΡΠΈ Π²Π°Ρ. Π‘Π²ΡΡΠ·Π°Ρ ΡΠ΅ ΡΠ΅ ΡΠ°ΠΌΠΈ, ΠΈΠ½ΡΡΠ°Π»ΠΈΡΠ°Ρ ΡΠ΅ Π²ΡΠΈΡΠΊΠΎ ΠΈ ΡΡΠ°ΡΠΈΠΊΡΡ Π±Π΅ΡΠ΅ ΠΈΠ·ΠΏΡΠ°ΡΠ΅Π½ ΠΊΡΠΌ Π²Π°Ρ.
ΠΠ½Π΅Ρ ΡΠΎΠ²Π° Π²Π΅ΡΠ΅ Π½ΡΠΌΠ° Π΄Π° ΡΠ°Π±ΠΎΡΠΈ: ΡΡΡΠ±Π²Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠ°Π½Π΅ ΠΊΡΠΌ ΡΡΠ»ΡΠ³Π°ΡΠ°, Π΄Π° ΠΏΠΎΠΊΡΠΈΠ΅ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡΡΠ° Ρ ΡΠ΅ΡΡΠΎΠ²Π΅, Π΄Π° ΠΏΠΎΡΡΡΠ°ΡΠ΅ Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π° ΠΈΠ»ΠΈ Π΄ΠΎΡΡΠ°Π²ΠΊΠ° Π΄ΠΎ Kuber ΠΈ Ρ.Π½. ΠΠ°ΡΠΎ ΡΡΠ»ΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ ΠΏΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½, Π²ΡΠΏΡΠ΅ΠΊΠΈ ΡΠ΅ ΡΠ΅ ΠΎΡΠ½Π΅ΠΌΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΠΎ-ΡΡΡΠ΄Π½ΠΎ.
Π Π°Π·Π΄Π΅Π»ΡΠΉ ΠΈ Π²Π»Π°Π΄Π΅ΠΉ. ΠΠ°ΠΊΠ²ΠΎ ΡΡΠ°Π²Π° Ρ Lua?
ΠΠΌΠ°ΡΠ΅ ΡΠ΅ΡΠΈΠΎΠ·Π½Π° Π΄ΠΈΠ»Π΅ΠΌΠ°: Π½ΡΠΊΠΎΠΈ Π΅ΠΊΠΈΠΏΠΈ Π½Π΅ ΡΡΠΏΡΡ Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎ Π΄Π° Π²ΡΠ²Π΅Π΄Π°Ρ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΡΡΠ»ΡΠ³Π° Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΠΊΠ° Π² Lua. Π’ΠΎΠ²Π° ΡΠ΅ΡΡΠΎ Π±Π΅ΡΠ΅ ΠΏΡΠΈΠ΄ΡΡΠΆΠ΅Π½ΠΎ ΠΎΡ Π½Π΅ΡΠ°Π±ΠΎΡΠ΅ΡΠ° ΡΡΠ»ΡΠ³Π°.
Π’ΠΎΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅ ΠΏΠΎΠ΄Π³ΠΎΡΠ²ΡΡ Π½ΡΠΊΠ°ΠΊΠ²Π° ΠΏΡΠΎΠΌΡΠ½Π°. Tarantool Π·Π°ΠΏΠΎΡΠ²Π° Π΄Π° ΠΈΠ·Π²ΡΡΡΠ²Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡΡΠ°, Π½ΠΎ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠ° Π²ΡΠ΅ ΠΎΡΠ΅ Π΅ ΡΡΡ ΡΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄; ΠΡΠΊΠ°ΠΊΡΠ² DDL ΠΈΠ»ΠΈ Π½Π΅ΡΠΎ Π΄ΡΡΠ³ΠΎ ΠΏΡΠΈΡΡΠΈΠ³Π° ΡΠ°ΠΌ ΡΡΠ΅Π· ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ΡΡ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ ΡΠ°Π·ΠΏΠ°Π΄Π°, Π·Π°ΡΠΎΡΠΎ Π½Π΅ ΡΠ΅ Π²Π·Π΅ΠΌΠ° ΠΏΡΠ΅Π΄Π²ΠΈΠ΄. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ°ΡΠ° Π·Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π·Π° Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡΠΈΡΠ΅ Π±Π΅ΡΠ΅ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π° Π½Π° Π»ΠΈΡΡ A4: ΡΠΏΡΠ΅ΡΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ°, Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ ΡΠΎΠ²Π°, Π²ΠΊΠ»ΡΡΠ΅ΡΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ°, ΠΈΠ·ΠΊΠ»ΡΡΠ΅ΡΠ΅ ΡΡΠΊ, Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΌ. ΠΠΎΡΠΌΠ°Ρ!
Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΡΠ΅Π³Π° Π½Π°ΠΉ-ΡΠ΅ΡΡΠΎ ΡΠ΅ ΠΎΠΏΠΈΡΠ²Π°ΠΌΠ΅ Π΄Π° Π½Π΅ ΠΏΡΠ°Π²ΠΈΠΌ Π½ΠΈΡΠΎ Π² Lua. ΠΡΠΎΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ iproto (Π΄Π²ΠΎΠΈΡΠ΅Π½ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π·Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΡΡ ΡΡΡΠ²ΡΡΠ°) ΠΈ ΡΠΎΠ²Π° Π΅. ΠΠΎΠΆΠ΅ Π±ΠΈ ΡΠΎΠ²Π° Π΅ Π»ΠΈΠΏΡΠ° Π½Π° Π·Π½Π°Π½ΠΈΡ ΡΡΠ΅Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈΡΠ΅, Π½ΠΎ ΠΎΡ ΡΠ°Π·ΠΈ Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π΅ ΡΠ»ΠΎΠΆΠ½Π°.
ΠΠΈΠ΅ Π½Π΅ Π²ΠΈΠ½Π°Π³ΠΈ ΡΠ»Π΅Π΄Π²Π°ΠΌΠ΅ ΡΠ»ΡΠΏΠΎ ΡΠΎΠ·ΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠΉ. ΠΠ½Π΅Ρ Π½ΡΠΌΠ°ΠΌΠ΅ ΡΠ΅ΡΠ½ΠΎ ΠΈ Π±ΡΠ»ΠΎ: ΠΈΠ»ΠΈ Π²ΡΠΈΡΠΊΠΎ Π΅ Π² Lua, ΠΈΠ»ΠΈ Π²ΡΠΈΡΠΊΠΎ Π΅ Π² Go. ΠΠ΅ΡΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°ΠΌΠ΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°ΠΌΠ΅, Π·Π° Π΄Π° Π½Π΅ ΡΠ΅ ΡΠ±Π»ΡΡΠΊΠ°ΠΌΠ΅ Ρ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΎΠ½Π½ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ.
ΠΡΠ΄Π΅ Π΅ Tarantool ΡΠ΅Π³Π°?
Tarantool ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² ΡΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΡΠ°ΠΉΠ½Π°ΡΠ° ΡΠ΅Π½Π° Π½Π° ΡΡΠΎΠΊΠΈΡΠ΅, ΠΊΠ°ΡΠΎ ΡΠ΅ Π²Π·Π΅ΠΌΠ°Ρ ΠΏΡΠ΅Π΄Π²ΠΈΠ΄ ΠΊΡΠΏΠΎΠ½ΠΈΡΠ΅ Π·Π° ΠΎΡΡΡΡΠΏΠΊΠ°, ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ ΠΎΡΠ΅ ΠΊΠ°ΡΠΎ βΠΡΠΎΠΌΠΎΡΡΡΡβ. ΠΠ°ΠΊΡΠΎ ΠΊΠ°Π·Π°Ρ
ΠΏΠΎ-ΡΠ°Π½ΠΎ, ΡΠ΅Π³Π° ΡΠΎΠΉ ΡΠ΅ ΠΏΠ΅Π½ΡΠΈΠΎΠ½ΠΈΡΠ°: ΡΠΎΠΉ Π΅ Π·Π°ΠΌΠ΅Π½Π΅Π½ ΠΎΡ Π½ΠΎΠ²Π° ΠΊΠ°ΡΠ°Π»ΠΎΠΆΠ½Π° ΡΡΠ»ΡΠ³Π° Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈ ΡΠ΅Π½ΠΈ, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΈ ΡΠ΅ΡΡ ΠΌΠ΅ΡΠ΅ΡΠ° Π²ΡΠΈΡΠΊΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π±ΡΡ
Π° Π½Π°ΠΏΡΠ°Π²Π΅Π½ΠΈ Π² Promotizer. ΠΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°ΡΠ° ΠΎΡ Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° ΠΌΡ Π±Π΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° Lua. ΠΡΠ΅Π΄ΠΈ Π΄Π²Π΅ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΡΡΠ»ΡΠ³Π°ΡΠ° Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π²ΡΡΠ½Π°ΡΠ° Π² Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ°ΡΠ° Π±Π΅ΡΠ΅ ΠΏΡΠ΅Π½Π°ΠΏΠΈΡΠ°Π½Π° Π² Go, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΌΠ΅Ρ
Π°Π½ΠΈΠΊΠ°ΡΠ° Π½Π° ΠΎΡΡΡΡΠΏΠΊΠΈΡΠ΅ ΡΠ΅ Π±Π΅ΡΠ΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΠ»Π° ΠΌΠ°Π»ΠΊΠΎ ΠΈ ΡΡΠ»ΡΠ³Π°ΡΠ° Π½ΡΠΌΠ°ΡΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ.
ΠΠ΄Π½Π° ΠΎΡ Π½Π°ΠΉ-ΠΊΡΠΈΡΠΈΡΠ½ΠΈΡΠ΅ ΡΡΠ»ΡΠ³ΠΈ Π΅ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈΡΡ ΠΏΡΠΎΡΠΈΠ». Π’ΠΎΠ΅ΡΡ, Π²ΡΠΈΡΠΊΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈ Π½Π° Wildberries ΡΠ΅ ΡΡΡ
ΡΠ°Π½ΡΠ²Π°Ρ Π² Tarantool ΠΈ ΠΈΠΌΠ° ΠΎΠΊΠΎΠ»ΠΎ 50 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° ΠΎΡ ΡΡΡ
.Π‘ΠΈΡΡΠ΅ΠΌΠ°, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π° Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π² Π½ΡΠΊΠΎΠ»ΠΊΠΎ DC, ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΠΊΡΠΌ Go ΡΡΠ»ΡΠ³ΠΈ.
Π‘ΠΏΠΎΡΠ΅Π΄ RPS, Promoter Π½ΡΠΊΠΎΠ³Π° Π΅ Π±ΠΈΠ» Π»ΠΈΠ΄Π΅Ρ, Π΄ΠΎΡΡΠΈΠ³Π°ΠΉΠΊΠΈ 6 Ρ
ΠΈΠ»ΡΠ΄ΠΈ Π·Π°ΡΠ²ΠΊΠΈ. Π Π΅Π΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠΌΠ°Ρ
ΠΌΠ΅ 50-60 Π±ΡΠΎΡ. Π‘Π΅Π³Π° Π»ΠΈΠ΄Π΅ΡΡΡ Π² RPS ΡΠ° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΏΡΠΎΡΠΈΠ»ΠΈ, ΠΎΠΊΠΎΠ»ΠΎ 12 Ρ
ΠΈΠ». Π’Π°Π·ΠΈ ΡΡΠ»ΡΠ³Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΡΠ°ΡΠ΄ΠΈΠ½Π³, ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΎ Π½Π° Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΈ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΈ. Π‘Π΅ΡΠ²ΠΈΠ·ΡΡ ΠΎΠ±ΡΠ»ΡΠΆΠ²Π° Π½Π°Π΄ 20 ΠΌΠ°ΡΠΈΠ½ΠΈ, Π½ΠΎ ΡΠΎΠ²Π° Π΅ ΡΠ²ΡΡΠ΄Π΅ ΠΌΠ½ΠΎΠ³ΠΎ, ΠΏΠ»Π°Π½ΠΈΡΠ°ΠΌΠ΅ Π΄Π° Π½Π°ΠΌΠ°Π»ΠΈΠΌ Π·Π°Π΄Π΅Π»Π΅Π½ΠΈΡΠ΅ ΡΠ΅ΡΡΡΡΠΈ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΊΠ°ΠΏΠ°ΡΠΈΡΠ΅ΡΡΡ ΠΎΡ 4-5 ΠΌΠ°ΡΠΈΠ½ΠΈ Π΅ Π΄ΠΎΡΡΠ°ΡΡΡΠ΅Π½ Π·Π° Π½Π΅Ρ.
Π£ΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΡΠ΅ΡΠΈΠΈ Π΅ ΠΏΡΡΠ²Π°ΡΠ° Π½ΠΈ ΡΡΠ»ΡΠ³Π° Π½Π° vshard ΠΈ Cartridge. ΠΠ°ΡΡΡΠΎΠΉΠ²Π°Π½Π΅ΡΠΎ Π½Π° vshard ΠΈ Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΠΊΠ°ΡΠ΅ΡΠ°ΡΠ° ΠΈΠ·ΠΈΡΠΊΠ²Π°ΡΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΈ ΡΡΠΈΠ»ΠΈΡ ΠΎΡ Π½Π°Ρ, Π½ΠΎ Π² ΠΊΡΠ°ΠΉΠ½Π° ΡΠΌΠ΅ΡΠΊΠ° Π²ΡΠΈΡΠΊΠΎ ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈ.
Π£ΡΠ»ΡΠ³Π°ΡΠ° Π·Π° ΠΏΠΎΠΊΠ°Π·Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ Π±Π°Π½Π΅ΡΠΈ Π½Π° ΡΠ΅Π±ΡΠ°ΠΉΡΠ° ΠΈ Π² ΠΌΠΎΠ±ΠΈΠ»Π½ΠΎΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅ΡΠ΅ Π΅Π΄Π½Π° ΠΎΡ ΠΏΡΡΠ²ΠΈΡΠ΅, ΠΏΡΡΠ½Π°ΡΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ Π² Tarantool. Π’Π°Π·ΠΈ ΡΡΠ»ΡΠ³Π° ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ ΡΠ°ΠΊΡΠ°, ΡΠ΅ Π΅ Π½Π° 6-7 Π³ΠΎΠ΄ΠΈΠ½ΠΈ, Π²ΡΠ΅ ΠΎΡΠ΅ ΡΠ°Π±ΠΎΡΠΈ ΠΈ Π½ΠΈΠΊΠΎΠ³Π° Π½Π΅ Π΅ ΡΠ΅ΡΡΠ°ΡΡΠΈΡΠ°Π½Π°. ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡ Master-Master. ΠΠΈΠΊΠΎΠ³Π° Π½ΠΈΡΠΎ Π½Π΅ ΡΠ΅ Π΅ ΡΡΡΠΏΠΈΠ»ΠΎ.
ΠΠΌΠ° ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Tarantool Π·Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ Π·Π° Π±ΡΡΠ·Π° ΡΠΏΡΠ°Π²ΠΊΠ° Π² ΡΠΊΠ»Π°Π΄ΠΎΠ²Π° ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° Π±ΡΡΠ·Π° Π΄Π²ΠΎΠΉΠ½Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ° Π² Π½ΡΠΊΠΎΠΈ ΡΠ»ΡΡΠ°ΠΈ. ΠΠΏΠΈΡΠ°Ρ ΠΌΠ΅ ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Redis Π·Π° ΡΠΎΠ²Π°, Π½ΠΎ Π΄Π°Π½Π½ΠΈΡΠ΅ Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π·Π°Π΅Ρ Π° ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΌΡΡΡΠΎ ΠΎΡ Tarantool.
Π£ΡΠ»ΡΠ³ΠΈΡΠ΅ Π½Π° ΡΠΏΠΈΡΡΠΊ Ρ ΡΠ°ΠΊΠ°ΡΠΈ, ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈ Π°Π±ΠΎΠ½Π°ΠΌΠ΅Π½ΡΠΈ, ΠΌΠΎΠ΄Π΅ΡΠ½ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΈΡΡΠΎΡΠΈΠΈ ΠΈ ΠΎΡΠ»ΠΎΠΆΠ΅Π½ΠΈ ΡΡΠΎΠΊΠΈ ΡΡΡΠΎ ΡΠ°Π±ΠΎΡΡΡ Ρ Tarantool. ΠΠΎΡΠ»Π΅Π΄Π½Π°ΡΠ° ΡΡΠ»ΡΠ³Π° Π² ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π·Π°Π΅ΠΌΠ° ΠΎΠΊΠΎΠ»ΠΎ 120 GB. Π’ΠΎΠ²Π° Π΅ Π½Π°ΠΉ-ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½Π°ΡΠ° ΡΡΠ»ΡΠ³Π° ΠΎΡ Π³ΠΎΡΠ½ΠΈΡΠ΅.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠΎΡΠΈΡΠ½ΠΈΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠΈ, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°Π½ΠΈ Ρ ΠΊΠ»ΡΡ-ΡΡΠΎΠΉΠ½ΠΎΡΡ ΠΈ ΡΡΠ°Π½Π·Π°ΠΊΡΠΈΠΎΠ½Π½ΠΎΡΡ, Tarantool Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΌΠΈΠΊΡΠΎΡΡΠ»ΡΠ³ΠΈ. Π‘ΡΠ΅ΡΠ½Π°Ρ ΠΌΠ΅ ΠΎΠ±Π°ΡΠ΅ ΡΡΡΠ΄Π½ΠΎΡΡΠΈ ΠΏΡΠΈ Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΡΡΠ»ΡΠ³ΠΈ Ρ ΠΌΠ½ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΠΊΠ° Π² Lua - ΡΡΠ»ΡΠ³ΠΈΡΠ΅ ΡΠ΅ΡΡΠΎ ΡΠΏΠΈΡΠ°Ρ Π° Π΄Π° ΡΠ°Π±ΠΎΡΡΡ. ΠΠ΅ ΡΡΠΏΡΡ ΠΌΠ΅ Π΄Π° ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π΅ΠΌ ΡΠΎΠ²Π° ΠΈ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ ΡΡΠΈΠ³Π½Π°Ρ ΠΌΠ΅ Π΄ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΠΎΡ Lua ΠΈ Go: Π·Π½Π°Π΅ΠΌ ΠΊΡΠ΄Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π΅Π΄ΠΈΠ½ Π΅Π·ΠΈΠΊ ΠΈ ΠΊΡΠ΄Π΅ Π΄ΡΡΠ³.
ΠΠ°ΠΊΠ²ΠΎ ΠΎΡΠ΅ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΠΏΠΎ ΡΠ΅ΠΌΠ°ΡΠ°
- Π‘ΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ Π²ΠΈΡΠΎΠΊΠΎ Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ ΠΎΡ Π½ΡΠ»Π°ΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΠ° Π½Π° Tarantool
habr.com/ru/company/mailru/blog/510440 - ΠΠ·Π±ΠΎΡ Π½Π° Π΄ΠΎΠ²Π΅ΡΠ΅Π½ Π»ΠΈΠ΄Π΅Ρ Π² Tarantool Cartridge
habr.com/ru/company/mailru/blog/513912 - Telegram ΠΊΠ°Π½Π°Π» Tarantool Ρ Π½ΠΎΠ²ΠΈΠ½ΠΈ Π·Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠ°
t.me/tarantool_news - ΠΠ±ΡΡΠ΄Π΅ΡΠ΅ Tarantool Π² ΡΠ°ΡΠ° Π½Π° ΠΎΠ±ΡΠ½ΠΎΡΡΡΠ°
t.me/tarantoolru
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com