Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠΎΡ€Π·ΠΈΠ½ΡƒΠŸΠΎΠ·Π²ΠΎΠ½ΠΈΡ‚ΡŒ
Найти Π² Π”Π·Π΅Π½Π΅

πŸ“’ Stateful vs Stateless: ΠΊΠ°ΠΊ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ состояниС прилоТСния

πŸ“’ Stateful vs Stateless: ΠΊΠ°ΠΊ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ состояниС прилоТСния? БСгодня ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π² ЯндСкс.ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ разбирался Π² ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°Ρ… ΠΊ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ состояний ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Π΅ΠΌΠ° далась Π»Π΅Π³ΠΊΠΎ, ΠΏΠΎΡ‡Ρ‚ΠΈ всС ΠΈ Ρ‚Π°ΠΊ Π·Π½Π°Π» с ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ слоТности, ΡƒΠΆΠ΅ Ρ…ΠΎΡ‡Ρƒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΏ, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ 64 Π³ΠΈΠ³Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²ΠΊΠΈ ΠΈ ΠΌ4 процСссор. Π”Π΅Ρ€ΠΆΠΈΡ‚Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ дайдТСст: πŸ”Ή Stateful – ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠ½ΠΈΡ‚ ΠΏΡ€ΠΎΡˆΠ»Ρ‹Π΅ взаимодСйствия (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, сСссии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ). β†’ ΠœΠΈΠ½ΡƒΡΡ‹: слоТнСС ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Π½ΡƒΠΆΠ½Ρ‹ распрСдСлённыС Π‘Π”, кСши, микросСрвисы). πŸ”Ή Stateless – ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ запрос нСзависим (ΠΊΠ°ΠΊ Π² REST). β†’ ΠŸΠ»ΡŽΡΡ‹: Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ β€” просто добавляСм сСрвСры ΠΈ балансировщик Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ! βš–οΈ Балансировщики Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ – ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ инструмСнт для Stateless: β€’ Π Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ запросы ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСрами. β€’ Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‡Π΅Ρ€Π΅Π· API Gateway ΠΈΠ»ΠΈ Service Discovery (Π Π°Π·Π²Π΅Ρ€Π½ΡƒΠ» локально Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅ APISIX c Consul). πŸ’‘ Π’Ρ‹Π²ΠΎΠ΄: Stateless – Π³ΠΈΠ±Ρ‡Π΅ для ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ Stateful Π½ΡƒΠΆΠ΅Π½ Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π²Π°ΠΆΠ½Π° история (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ€Π·ΠΈΠ½Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅). #Π―Π½Π΄Π΅ΠΊΡΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ

πŸ“’ Stateful vs Stateless: ΠΊΠ°ΠΊ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ состояниС прилоТСния?

БСгодня ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽ ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π² ЯндСкс.ΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌ разбирался Π² ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°Ρ… ΠΊ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ состояний ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’Π΅ΠΌΠ° далась Π»Π΅Π³ΠΊΠΎ, ΠΏΠΎΡ‡Ρ‚ΠΈ всС ΠΈ Ρ‚Π°ΠΊ Π·Π½Π°Π» с ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ слоТности, ΡƒΠΆΠ΅ Ρ…ΠΎΡ‡Ρƒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΊΠΎΠΌΠΏ, ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ 64 Π³ΠΈΠ³Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²ΠΊΠΈ ΠΈ ΠΌ4 процСссор. Π”Π΅Ρ€ΠΆΠΈΡ‚Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΉ дайдТСст:

πŸ”Ή Stateful – ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠ½ΠΈΡ‚ ΠΏΡ€ΠΎΡˆΠ»Ρ‹Π΅ взаимодСйствия (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, сСссии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ).

β†’ ΠœΠΈΠ½ΡƒΡΡ‹: слоТнСС ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Π½ΡƒΠΆΠ½Ρ‹ распрСдСлённыС Π‘Π”, кСши, микросСрвисы).

πŸ”Ή Stateless – ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ запрос нСзависим (ΠΊΠ°ΠΊ Π² REST).

β†’ ΠŸΠ»ΡŽΡΡ‹: Π»Π΅Π³ΠΊΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΠΎ β€” просто добавляСм сСрвСры ΠΈ балансировщик Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ!

βš–οΈ Балансировщики Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ – ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ инструмСнт для Stateless:

β€’ Π Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ запросы ΠΌΠ΅ΠΆΠ΄Ρƒ сСрвСрами.

β€’ Π Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Ρ‡Π΅Ρ€Π΅Π· API Gateway ΠΈΠ»ΠΈ Service Discovery (Π Π°Π·Π²Π΅Ρ€Π½ΡƒΠ» локально Π² Π΄ΠΎΠΊΠ΅Ρ€Π΅ APISIX c Consul).

πŸ’‘ Π’Ρ‹Π²ΠΎΠ΄: Stateless – Π³ΠΈΠ±Ρ‡Π΅ для ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ Stateful Π½ΡƒΠΆΠ΅Π½ Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π²Π°ΠΆΠ½Π° история (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ€Π·ΠΈΠ½Π° Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅).

#Π―Π½Π΄Π΅ΠΊΡΠŸΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒΠΌΠΡ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°