Serverless ΠΏΠΎ стоСчкам

Serverless ΠΏΠΎ стоСчкам
Serverless ― это Π½Π΅ ΠΏΡ€ΠΎ физичСскоС отсутствиС сСрвСров. Π­Ρ‚ΠΎ Π½Π΅ Β«ΡƒΠ±ΠΈΠΉΡ†Π°Β» ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² ΠΈ Π½Π΅ ΠΌΠΈΠΌΠΎΠ»Π΅Ρ‚Π½Ρ‹ΠΉ Ρ‚Ρ€Π΅Π½Π΄. Π­Ρ‚ΠΎ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΡŽ систСм Π² ΠΎΠ±Π»Π°ΠΊΠ΅. Π’ сСгодняшнСй ΡΡ‚Π°Ρ‚ΡŒΠ΅ коснСмся Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ Serverless-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, посмотрим, ΠΊΠ°ΠΊΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ Serverless-услуги ΠΈ open-source ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹. Π’ ΠΊΠΎΠ½Ρ†Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ вопросах примСнСния Serverless.

Π― Ρ…ΠΎΡ‡Ρƒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ прилоТСния (Π΄Π° Ρ…ΠΎΡ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°). Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Ρ‡Π°Ρ‚, ΠΈ сСрвис для ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, ΠΈ балансировщик Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Π’ любом случаС Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ°Π»ΠΎ: придСтся ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ инфраструктуру, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ зависимости прилоТСния, Π·Π°Π΄ΡƒΠΌΠ°Ρ‚ΡŒΡΡ насчСт ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы хоста. ΠŸΠΎΡ‚ΠΎΠΌ понадобится ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ нСбольшиС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π°. Ну ΠΈ ΠΏΡ€ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ.

А Ρ‡Ρ‚ΠΎ Ссли Π²Π·ΡΡ‚ΡŒ эфСмСрныС ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Π΅ зависимости ΡƒΠΆΠ΅ прСдустановлСны, Π° сами ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΈ ΠΎΡ‚ ОБ хоста? ΠœΠΎΠ½ΠΎΠ»ΠΈΡ‚ Ρ€Π°Π·ΠΎΠ±ΡŒΠ΅ΠΌ Π½Π° микросСрвисы, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСзависимо ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ…. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΠ² ΠΊΠΎΠ΄ Π² Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, я смогу Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° любой инфраструктурС. Π£ΠΆΠ΅ Π»ΡƒΡ‡ΡˆΠ΅.

А Ссли Π½Π΅ хочСтся Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹? НС хочСтся Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ прилоТСния. НС хочСтся ΠΏΠ»Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π° простой Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° сСрвис минимальна. Π₯очСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄. Π‘ΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΈ Π²Ρ‹ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹ Π½Π° Ρ€Ρ‹Π½ΠΎΠΊ со ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ свСта.

Π’Π°ΠΊΠΈΠ΅ мысли ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ мСня ΠΊ бСссСрвСрным вычислСниям. Serverless Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π½Π΅ физичСскоС отсутствиС сСрвСров, Π° отсутствиС Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ ΠΏΠΎ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ инфраструктурой.

ИдСя Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π»ΠΎΠ³ΠΈΠΊΠ° прилоТСния разбиваСтся Π½Π° нСзависимыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Они ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΠΉΠ½ΡƒΡŽ структуру. КаТдая ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ выполняСт ΠΎΠ΄Π½Ρƒ Β«ΠΌΠΈΠΊΡ€ΠΎΠ·Π°Π΄Π°Ρ‡ΡƒΒ». ВсС, Ρ‡Ρ‚ΠΎ трСбуСтся ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ― Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠΌ консоль ΠΈ соотнСсти ΠΈΡ… с источниками событий. Код Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ запросу Π² автоматичСски ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅, Π° я Π·Π°ΠΏΠ»Π°Ρ‡Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π° врСмя исполнСния.

Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, ΠΊΠ°ΠΊ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ процСсс Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ прилоТСния.

Π‘ΠΎ стороны Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°

Π Π°Π½Π΅Π΅ ΠΌΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π’ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ систСмы выполняСт ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. И сСрвСр с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡƒΡ‰Π΅Π½ постоянно, Π΄Π°ΠΆΠ΅ Ссли Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π΅Ρ‚.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ serverless, Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠ·Π°Π΄Π°Ρ‡ΠΈ. Под ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΈΠ· Π½ΠΈΡ… пишСм свою Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ нСзависимы Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° ΠΈ Π½Π΅ хранят ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ состоянии (stateless). Они Π΄Π°ΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ написаны Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках. Если ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ… Β«ΡƒΠΏΠ°Π΄Π΅Ρ‚Β», ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ Π½Π΅ остановится. АрхитСктура прилоТСния Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

Serverless ΠΏΠΎ стоСчкам
Π”Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Serverless ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с микросСрвисами. Но микросСрвис ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ нСсколько Π·Π°Π΄Π°Ρ‡, Π° функция Π² ΠΈΠ΄Π΅Π°Π»Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΠ΄Π½Ρƒ. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ, Ρ‡Ρ‚ΠΎ стоит Π·Π°Π΄Π°Ρ‡Π° ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ статистику ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎ запросу ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ микросСрвисном ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π·Π°Π΄Π°Ρ‡Ρƒ выполняСт ΠΎΠ΄ΠΈΠ½ сСрвис с двумя Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ Π²Ρ…ΠΎΠ΄Π°: Π½Π° запись ΠΈ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅. Π’ бСссСрвСрных вычислСниях это Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π΅ связанныС ΠΌΠ΅ΠΆΠ΄Ρƒ собой. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ экономит Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ рСсурсы, Ссли, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, статистика обновляСтся Ρ‡Π°Ρ‰Π΅, Ρ‡Π΅ΠΌ выгруТаСтся.

Serverless-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π·Π° ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (timeout), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ услуги. НапримСр, для AWS timeout составляСт 15 ΠΌΠΈΠ½ΡƒΡ‚. Π—Π½Π°Ρ‡ΠΈΡ‚, Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡƒΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (long-lived) придСтся ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄ трСбования ― этим Serverless отличаСтся ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… популярных сСгодня Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ (ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² ΠΈ Platform as a Service).

КаТдой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π°Π·Π½Π°Ρ‡Π°Π΅ΠΌ событиС. Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ― это Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ для дСйствия:

Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅
ДСйствиС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ выполняСт функция

Π’ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΠ»ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Ρ‚ΠΎΠ²Π°Ρ€Π°
Π‘ΠΆΠ°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³

Π’ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… обновился адрСс физичСского ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°
ΠŸΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² ΠΊΠ°Ρ€Ρ‚Ρ‹ Π½ΠΎΠ²ΠΎΠ΅ мСстополоТСниС

ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΎΠΏΠ»Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ²Π°Ρ€
Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ°

Бобытиями ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ HTTP-запросы, ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ сообщСний ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠΈ событий ― это ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ появлСниС Π΄Π°Π½Π½Ρ‹Ρ…. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ.

АрхитСктуру ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ, ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡ‡Ρ‚ΠΈ стало serverless. Π”Π°Π»ΡŒΡˆΠ΅ ΠΈΠ΄Π΅ΠΌ ΠΊ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρƒ услуги.

Π‘ΠΎ стороны ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ бСссСрвСрныС вычислСния ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… услуг. ΠΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ: Azure Functions, AWS Lambda, Google Cloud Functions, IBM Cloud Functions.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ услугой Π±ΡƒΠ΄Π΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· консоль ΠΈΠ»ΠΈ Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°. Код Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· способов:

  • Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π²ΠΎ встроСнных Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°Ρ… Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-консоль,
  • Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ² с ΠΊΠΎΠ΄ΠΎΠΌ,
  • Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΌΠΈ git-рСпозиториями.

Π—Π΄Π΅ΡΡŒ ΠΆΠ΅ настраиваСм события, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. Π£ Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠ² Π½Π°Π±ΠΎΡ€Ρ‹ событий ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ.

Serverless ΠΏΠΎ стоСчкам

ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ Π½Π° своСй инфраструктурС построил ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π» систСму Function as a Service (FaaS):

  1. Код Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π½Π° сторонС ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°.
  2. Когда появляСтся событиС, Π½Π° сСрвСрС автоматичСски Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ с ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ экзСмпляру Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ― свой ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€.
  3. Из Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° функция отправляСтся Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, вычисляСтся, ΠΎΡ‚Π΄Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.
  4. Число ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ… событий растСт ― растСт количСство ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ². БистСма автоматичСски ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Π°.
  5. ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ Π·Π°Π΄Π°Π΅Ρ‚ врСмя простоя ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² ― Ссли Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ этого Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π² ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π΅, ΠΎΠ½ уничтоТаСтся.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Serverless Β«ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈΒ». ΠŸΠ»Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π° услугу Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ pay-as-you-go ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π° Ρ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π° Ρ‚ΠΎ врСмя, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ использовались.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² с услугой, ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρ‹ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ Π΄ΠΎ 12 мСсяцСв бСсплатного тСстирования, Π½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ±Ρ‰Π΅Π΅ врСмя вычислСний, количСство запросов Π² мСсяц, Π΄Π΅Π½Π΅ΠΆΠ½Ρ‹Π΅ срСдства ΠΈΠ»ΠΈ потрСбляСмыС мощности.

ОсновноС прСимущСство Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠΌ ― Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎΠ± инфраструктурС (сСрвСрах, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…, ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°Ρ…). Π‘ΠΎ своСй стороны ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ FaaS ΠΊΠ°ΠΊ Π½Π° собствСнных Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ…, Ρ‚Π°ΠΊ ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ open-source инструмСнтов. О Π½ΠΈΡ… ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ дальшС.

Π‘ΠΎ стороны open source

ПослСдниС ΠΏΠ°Ρ€Ρƒ Π»Π΅Ρ‚ сообщСство open-source Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π°Π΄ инструмСнтами Serverless. Π’ Ρ‚ΠΎΠΌ числС Π²ΠΊΠ»Π°Π΄ Π² Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ бСссСрвСрных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ вносят ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠΈΠ΅ ΠΈΠ³Ρ€ΠΎΠΊΠΈ Ρ€Ρ‹Π½ΠΊΠ°:

  • Google ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ свой open-source инструмСнт ― Knative. Π’ Π΅Π³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ участвовали IBM, RedHat, Pivotal ΠΈ SAP;
  • IBM Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π½Π°Π΄ Serverless-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ OpenWhisk, которая Π·Π°Ρ‚Π΅ΠΌ стала ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Apache Foundation;
  • Microsoft частично ΠΎΡ‚ΠΊΡ€Ρ‹Π»ΠΈ ΠΊΠΎΠ΄ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Azure Functions.

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ вСдутся ΠΈ Π² Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ serverless-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ². Kubeless ΠΈ Fission Ρ€Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Ρ… Kubernetes-кластСров, OpenFaaS Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ с Kubernetes, Ρ‚Π°ΠΊ ΠΈ с Docker Swarm. Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ выступаСт Π² Ρ€ΠΎΠ»ΠΈ своСобразного ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° ― ΠΏΠΎ запросу Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ Π²Π½ΡƒΡ‚Ρ€ΠΈ кластСра срСду выполнСния, ΠΏΠΎΡ‚ΠΎΠΌ запускаСт Ρ‚Π°ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ простор для ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ инструмСнта ΠΏΠΎΠ΄ свои Π½ΡƒΠΆΠ΄Ρ‹. Π’Π°ΠΊ, Π² Kubeless Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ timeout выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ― 180 сСкунд). Fission Π² ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Ρ…ΠΎΠ»ΠΎΠ΄Π½ΠΎΠ³ΠΎ старта ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ всС врСмя Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΌΠΈ (Ρ…ΠΎΡ‚ΡŒ это ΠΈ Π²Π»Π΅Ρ‡Π΅Ρ‚ Π·Π°Ρ‚Ρ€Π°Ρ‚Ρ‹ Π½Π° простой рСсурсов). А OpenFaaS ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π½Π°Π±ΠΎΡ€ Ρ‚Ρ€ΠΈΠ³Π³Π΅Ρ€ΠΎΠ² Π½Π° любой вкус ΠΈ Ρ†Π²Π΅Ρ‚: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ². Π Π°Π±ΠΎΡ‚Π° с Π½ΠΈΠΌΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‡ΡƒΡ‚ΡŒ большСго количСства Π½Π°Π²Ρ‹ΠΊΠΎΠ², Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ΠΎΠΌ ― это ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΡƒΠΌΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Kubernetes-кластСр Ρ‡Π΅Ρ€Π΅Π· CLI. ΠœΠ°ΠΊΡΠΈΠΌΡƒΠΌ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ open-source инструмСнты (допустим, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ Kafka).

Π’Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠΌ способом ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Serverless ― Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ open-source, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ряд прСимущСств ΠΈ нСдостатков Serverless-ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

Π‘ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ прСимущСств ΠΈ нСдостатков

Serverless Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅Ρ‚ ΠΈΠ΄Π΅ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π½ΠΎΠΉ инфраструктуры ΠΈ микросСрвисного ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠ·Ρ‹Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, Π½Π΅ ΠΏΡ€ΠΈΠ²ΡΠ·Ρ‹Π²Π°ΡΡΡŒ ΠΊ ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅. ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ систСмы упрощаСтся, Π° ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки становится Π»Π΅Π³Ρ‡Π΅. ΠœΠΈΠΊΡ€ΠΎΡΠ΅Ρ€Π²ΠΈΡΠ½Π°Ρ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π² систСму Π½ΠΎΠ²Ρ‹ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ быстрСС, Ρ‡Π΅ΠΌ Π² случаС с ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

Serverless сокращаСт врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΅Ρ‰Π΅ большС, позволяя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ ΡΠΎΡΡ€Π΅Π΄ΠΎΡ‚ΠΎΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π° бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ΅ прилоТСния ΠΈ написании ΠΊΠΎΠ΄Π°. Как слСдствиС, врСмя Π²Ρ‹Ρ…ΠΎΠ΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ Π½Π° Ρ€Ρ‹Π½ΠΎΠΊ сокращаСтся.

Бонусом ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ автоматичСскоС ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, Π° ΠΏΠ»Π°Ρ‚ΠΈΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ рСсурсы ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎ врСмя, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ.

Как ΠΈ любая тСхнология, Serverless ΠΈΠΌΠ΅Π΅Ρ‚ нСдостатки.

НапримСр, Ρ‚Π°ΠΊΠΈΠΌ нСдостатком ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ врСмя Ρ…ΠΎΠ»ΠΎΠ΄Π½ΠΎΠ³ΠΎ старта (Π² срСднСм Π΄ΠΎ 1 сСкунды для Ρ‚Π°ΠΊΠΈΡ… языков ΠΊΠ°ΠΊ JavaScript, Python, Go, Java, Ruby).

Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, Π½Π° Π΄Π΅Π»Π΅ врСмя Ρ…ΠΎΠ»ΠΎΠ΄Π½ΠΎΠ³ΠΎ старта зависит ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…: язык, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ написана функция, количСство Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, объСм ΠΊΠΎΠ΄Π°, ΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ рСсурсами (Ρ‚Π΅ ΠΆΠ΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ сСрвСры Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ). ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ управляСт этими ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя старта. Но с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ запуска ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π° ― здСсь всС зависит ΠΎΡ‚ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°.

Π₯ΠΎΠ»ΠΎΠ΄Π½Ρ‹ΠΉ старт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ Π² Ρ‚Π΅ΠΏΠ»Ρ‹ΠΉ, ΠΊΠΎΠ³Π΄Π° функция ΠΏΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ ΠΈΠ²Π΅Π½Ρ‚ΠΎΠΌ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€. Вакая ситуация Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ Π² Ρ‚Ρ€Π΅Ρ… случаях:

  • Ссли ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сСрвис ΠΈ растСт количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ;
  • Ссли ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈΠ»ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΌΠΈ всС врСмя;
  • Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ запускаСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ (скаТСм, ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 3 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹).

Для ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ…ΠΎΠ»ΠΎΠ΄Π½Ρ‹ΠΉ старт ― Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°. Π—Π΄Π΅ΡΡŒ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Ρ‚Π°Π»ΠΊΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° ΠΈ Π·Π°Π΄Π°Ρ‡ сСрвиса. Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° старта Π½Π° сСкунду Π½Π΅ всСгда ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° для бизнСс-прилоТСния, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎΠΉ для мСдицинских слуТб. ВСроятно, Π² этом случаС бСссСрвСрный ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΡƒΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ‚.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ нСдостатком Serverless Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠ΅ врСмя ΠΆΠΈΠ·Π½ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (timeout, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ функция Π΄ΠΎΠ»ΠΆΠ½Π° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ).

Но, Ссли прСдстоит Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡƒΡ‰ΠΈΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ ― ΡΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Serverless с Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ.

НС всС систСмы смогут Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΠΎ Serverless-схСмС.

НСкоторыС прилоТСния ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π±ΡƒΠ΄ΡƒΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ состояниС Π²ΠΎ врСмя выполнСния. НСкоторыС Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ останутся ΠΌΠΎΠ½ΠΎΠ»ΠΈΡ‚Π½Ρ‹ΠΌΠΈ, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡƒΡ‰ΠΈΠΌΠΈ. Однако (ΠΊΠ°ΠΊ ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹), Serverless ― тСхнология с большим Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠΌ.

Π’ этом ΠΊΠ»ΡŽΡ‡Π΅ ΠΌΠ½Π΅ Π±Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ вопросу примСнСния Serverless-ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

Π‘ΠΎ стороны примСнСния

Π—Π° 2018 Π³ΠΎΠ΄ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ использования Serverless вырос Π² ΠΏΠΎΠ»Ρ‚ΠΎΡ€Π° Ρ€Π°Π·Π°. Π‘Ρ€Π΅Π΄ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΆΠ΅ Π²Π½Π΅Π΄Ρ€ΠΈΠ»ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΡŽ Π² свои сСрвисы, Ρ‚Π°ΠΊΠΈΠ΅ Π³ΠΈΠ³Π°Π½Ρ‚Ρ‹ Ρ€Ρ‹Π½ΠΊΠ° ΠΊΠ°ΠΊ Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. ΠŸΡ€ΠΈ этом Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Serverless ― Π½Π΅ панацСя, Π° инструмСнт для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΡ€ΡƒΠ³Π° Π·Π°Π΄Π°Ρ‡:

  • Π‘ΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ простой рСсурсов. НС Π½Π°Π΄ΠΎ постоянно Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ ΠΏΠΎΠ΄ сСрвисы, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠ°Π»ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ.
  • «На Π»Π΅Ρ‚ΡƒΒ» ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅. Π‘ΠΆΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, Π²Ρ‹Ρ€Π΅Π·Π°Ρ‚ΡŒ Ρ„ΠΎΠ½, ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ Π²ΠΈΠ΄Π΅ΠΎ, Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ IoT, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ матСматичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.
  • Β«Π‘ΠΊΠ»Π΅ΠΈΡ‚ΡŒΒ» ΠΌΠ΅ΠΆΠ΄Ρƒ собой Π΄Ρ€ΡƒΠ³ΠΈΠ΅ сСрвисы. Git-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ, Ρ‡Π°Ρ‚-Π±ΠΎΡ‚ Π² Slack с Jira ΠΈ с ΠΊΠ°Π»Π΅Π½Π΄Π°Ρ€Π΅ΠΌ.
  • Π‘Π°Π»Π°Π½ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ. Π—Π΄Π΅ΡΡŒ остановимся ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Допустим, Π΅ΡΡ‚ΡŒ сСрвис, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ 50 Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ. Под Π½Π΅Π³ΠΎ стоит Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина со слабым ΠΆΠ΅Π»Π΅Π·ΠΎΠΌ. ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° сСрвис возрастаСт Π² Ρ€Π°Π·Ρ‹. Π’ΠΎΠ³Π΄Π° слабоС ΠΆΠ΅Π»Π΅Π·ΠΎ Π½Π΅ справляСтся.

МоТно Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² систСму балансировщик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, скаТСм, Π½Π° Ρ‚Ρ€ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°ΡˆΠΈΠ½Ρ‹. На Π΄Π°Π½Π½ΠΎΠΌ этапС ΠΌΡ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Ρ‚ΠΎΡ‡Π½ΠΎ ΡΠΏΡ€ΠΎΠ³Π½ΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, поэтому ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ количСство рСсурсов Π΄Π΅Ρ€ΠΆΠΈΠΌ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΌΠΈ Β«ΠΏΡ€ΠΎ запас». И ΠΏΠ΅Ρ€Π΅ΠΏΠ»Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌ Π·Π° простой.

Π’ Ρ‚Π°ΠΊΠΎΠΉ ситуации ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ систСму Ρ‡Π΅Ρ€Π΅Π· Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄: Π·Π° балансировщиком Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ оставляСм ΠΎΠ΄Π½Ρƒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ ΠΈ ставим ссылку Π½Π° Serverless Endpoint с функциями. Если Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΠΎΡ€ΠΎΠ³ ― балансировщик запускаСт экзСмпляры Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Π΅Ρ€ΡƒΡ‚ Π½Π° сСбя Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запросов.

Serverless ΠΏΠΎ стоСчкам
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Serverless ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΌ, Π³Π΄Π΅ приходится Π½Π΅ слишком часто, Π½ΠΎ интСнсивно ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ большоС количСство запросов. Π’ этом случаС Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π½Π° 15 ΠΌΠΈΠ½ΡƒΡ‚ Π²Ρ‹Π³ΠΎΠ΄Π½Π΅Π΅, Ρ‡Π΅ΠΌ всС врСмя Π΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ ΠΈΠ»ΠΈ сСрвСр.

ΠŸΡ€ΠΈ всСх прСимущСствах бСссСрвСрных вычислСний, ΠΏΠ΅Ρ€Π΅Π΄ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ΠΌ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ стоит ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ прилоТСния ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ смоТСт Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Serverless Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ случаС.

Serverless ΠΈ Selectel

Π’ Selectel ΠΌΡ‹ ΡƒΠΆΠ΅ упростили Ρ€Π°Π±ΠΎΡ‚Ρƒ с Kubernetes Ρ‡Π΅Ρ€Π΅Π· Π½Π°ΡˆΡƒ панСль управлСния. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ строим ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ FaaS-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ. ΠœΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³Π»ΠΈ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ свои Π·Π°Π΄Π°Ρ‡ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Serverless Ρ‡Π΅Ρ€Π΅Π· ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ, Π³ΠΈΠ±ΠΊΠΈΠΉ интСрфСйс.

Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΈΠ΄Π΅ΠΈ, ΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ идСальная FaaS-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΈ ΠΊΠ°ΠΊ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Serverless Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ ΠΈΠΌΠΈ Π² коммСнтариях. ΠœΡ‹ ΡƒΡ‡Ρ‚Π΅ΠΌ ваши поТСлания ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.
Β 
ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ