Serverless β ΡΡΠΎ Π½Π΅ ΠΏΡΠΎ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ². ΠΡΠΎ Π½Π΅ Β«ΡΠ±ΠΈΠΉΡΠ°Β» ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² ΠΈ Π½Π΅ ΠΌΠΈΠΌΠΎΠ»Π΅ΡΠ½ΡΠΉ ΡΡΠ΅Π½Π΄. ΠΡΠΎ Π½ΠΎΠ²ΡΠΉ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ ΠΊ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ Π² ΠΎΠ±Π»Π°ΠΊΠ΅. Π ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½Π΅ΠΉ ΡΡΠ°ΡΡΠ΅ ΠΊΠΎΡΠ½Π΅ΠΌΡΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ Serverless-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊΡΡ ΡΠΎΠ»Ρ ΠΈΠ³ΡΠ°Π΅Ρ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ Serverless-ΡΡΠ»ΡΠ³ΠΈ ΠΈ open-source ΠΏΡΠΎΠ΅ΠΊΡΡ. Π ΠΊΠΎΠ½ΡΠ΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ Π²ΠΎΠΏΡΠΎΡΠ°Ρ
ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Serverless.
Π― Ρ
ΠΎΡΡ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ ΡΠ°ΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π΄Π° Ρ
ΠΎΡΡ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°). ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈ ΡΠ°Ρ, ΠΈ ΡΠ΅ΡΠ²ΠΈΡ Π΄Π»Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°, ΠΈ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊ Π½Π°Π³ΡΡΠ·ΠΊΠΈ. Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΌΠ°Π»ΠΎ: ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ Π½Π°ΡΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Ρ
ΠΎΡΡΠ°. ΠΠΎΡΠΎΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°ΡΡ ΡΠ°Π±ΠΎΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ°. ΠΡ ΠΈ ΠΏΡΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ΄ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π·Π°Π±ΡΠ²Π°ΡΡ.
Π ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Π·ΡΡΡ ΡΡΠ΅ΠΌΠ΅ΡΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ, Π² ΠΊΠΎΡΠΎΡΡΡ ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΠΆΠ΅ ΠΏΡΠ΅Π΄ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ, Π° ΡΠ°ΠΌΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Ρ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π° ΠΈ ΠΎΡ ΠΠ‘ Ρ ΠΎΡΡΠ°? ΠΠΎΠ½ΠΎΠ»ΠΈΡ ΡΠ°Π·ΠΎΠ±ΡΠ΅ΠΌ Π½Π° ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ ΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ . ΠΠΎΠΌΠ΅ΡΡΠΈΠ² ΠΊΠΎΠ΄ Π² ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ, Ρ ΡΠΌΠΎΠ³Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π΅Π³ΠΎ Π½Π° Π»ΡΠ±ΠΎΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅. Π£ΠΆΠ΅ Π»ΡΡΡΠ΅.
Π Π΅ΡΠ»ΠΈ Π½Π΅ Ρ ΠΎΡΠ΅ΡΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ? ΠΠ΅ Ρ ΠΎΡΠ΅ΡΡΡ Π΄ΡΠΌΠ°ΡΡ ΠΏΡΠΎ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΅ Ρ ΠΎΡΠ΅ΡΡΡ ΠΏΠ»Π°ΡΠΈΡΡ Π·Π° ΠΏΡΠΎΡΡΠΎΠΉ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° ΡΠ΅ΡΠ²ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½Π°. Π₯ΠΎΡΠ΅ΡΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄. Π‘ΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΈ Π²ΡΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΡ Π½Π° ΡΡΠ½ΠΎΠΊ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ ΡΠ²Π΅ΡΠ°.
Π’Π°ΠΊΠΈΠ΅ ΠΌΡΡΠ»ΠΈ ΠΏΡΠΈΠ²Π΅Π»ΠΈ ΠΌΠ΅Π½Ρ ΠΊ Π±Π΅ΡΡΠ΅ΡΠ²Π΅ΡΠ½ΡΠΌ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΠΌ. Serverless Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Π½Π΅ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², Π° ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ Π±ΠΎΠ»ΠΈ ΠΏΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠΎΠΉ.
ΠΠ΄Π΅Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ Π»ΠΎΠ³ΠΈΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°Π·Π±ΠΈΠ²Π°Π΅ΡΡΡ Π½Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉΠ½ΡΡ ΡΡΡΡΠΊΡΡΡΡ. ΠΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΡΡΠ½ΠΊΡΠΈΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΎΠ΄Π½Ρ Β«ΠΌΠΈΠΊΡΠΎΠ·Π°Π΄Π°ΡΡΒ». ΠΡΠ΅, ΡΡΠΎ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° β Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΎΠ±Π»Π°ΡΠ½ΡΠΌ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠΌ ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΠΈ ΡΠΎΠΎΡΠ½Π΅ΡΡΠΈ ΠΈΡ Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ°ΠΌΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ. ΠΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎ Π·Π°ΠΏΡΠΎΡΡ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅, Π° Ρ Π·Π°ΠΏΠ»Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π·Π° Π²ΡΠ΅ΠΌΡ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΠΊΠ°ΠΊ ΡΠ΅ΠΏΠ΅ΡΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π‘ΠΎ ΡΡΠΎΡΠΎΠ½Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°
Π Π°Π½Π΅Π΅ ΠΌΡ Π½Π°ΡΠ°Π»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎΠΌ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΡΠΈΡΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π ΡΠ΅ΡΠ²Π΅Ρ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°ΠΏΡΡΠ΅Π½ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π΅Ρ.
Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ serverless, ΡΠ°Π·Π±ΠΈΠ²Π°Π΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΈΠΊΡΠΎΠ·Π°Π΄Π°ΡΠΈ. ΠΠΎΠ΄ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ· Π½ΠΈΡ ΠΏΠΈΡΠ΅ΠΌ ΡΠ²ΠΎΡ ΡΡΠ½ΠΊΡΠΈΡ. Π€ΡΠ½ΠΊΡΠΈΠΈ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π° ΠΈ Π½Π΅ Ρ ΡΠ°Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ (stateless). ΠΠ½ΠΈ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Ρ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ . ΠΡΠ»ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ Β«ΡΠΏΠ°Π΄Π΅ΡΒ», ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π½Π΅ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ. ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π²ΠΎΡ ΡΠ°ΠΊ:
ΠΠ΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ Π² 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-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ.
ΠΠ΄Π΅ΡΡ ΠΆΠ΅ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ ΡΠΎΠ±ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ. Π£ ΡΠ°Π·Π½ΡΡ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠΎΠ² Π½Π°Π±ΠΎΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΌΠΎΠ³ΡΡ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ.
ΠΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ Π½Π° ΡΠ²ΠΎΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ΅ ΠΏΠΎΡΡΡΠΎΠΈΠ» ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°Π» ΡΠΈΡΡΠ΅ΠΌΡ Function as a Service (FaaS):
- ΠΠΎΠ΄ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π² Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ΅ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅ΡΠ°.
- ΠΠΎΠ³Π΄Π° ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠ±ΡΡΠΈΠ΅, Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·Π²ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ Ρ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Π½ΡΠΌ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ β ΡΠ²ΠΎΠΉ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ.
- ΠΠ· Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ, Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ, ΠΎΡΠ΄Π°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
- Π§ΠΈΡΠ»ΠΎ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΡΡ ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠ°ΡΡΠ΅Ρ β ΡΠ°ΡΡΠ΅Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ². Π‘ΠΈΡΡΠ΅ΠΌΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΡΡΡ. ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΠ½Π° Π±ΡΠ΄Π΅Ρ Π½Π΅Π°ΠΊΡΠΈΠ²Π½Π°.
- ΠΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ Π·Π°Π΄Π°Π΅Ρ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΡΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠ² β Π΅ΡΠ»ΠΈ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ΅, ΠΎΠ½ ΡΠ½ΠΈΡΡΠΎΠΆΠ°Π΅ΡΡΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ 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 ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ 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
- Π‘ΠΎΠΊΡΠ°ΡΠΈΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΠ΅ Π½Π°Π΄ΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π΄Π΅ΡΠΆΠ°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΠΏΠΎΠ΄ ΡΠ΅ΡΠ²ΠΈΡΡ, ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠ°Π»ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ.
- Β«ΠΠ° Π»Π΅ΡΡΒ» ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅. Π‘ΠΆΠΈΠΌΠ°ΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ, Π²ΡΡΠ΅Π·Π°ΡΡ ΡΠΎΠ½, ΠΌΠ΅Π½ΡΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ Π²ΠΈΠ΄Π΅ΠΎ, ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄Π°ΡΡΠΈΠΊΠ°ΠΌΠΈ IoT, Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
- Β«Π‘ΠΊΠ»Π΅ΠΈΡΡΒ» ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ΅ΡΠ²ΠΈΡΡ. Git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°ΠΌΠΈ, ΡΠ°Ρ-Π±ΠΎΡ Π² Slack Ρ Jira ΠΈ Ρ ΠΊΠ°Π»Π΅Π½Π΄Π°ΡΠ΅ΠΌ.
- ΠΠ°Π»Π°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ. ΠΠ΄Π΅ΡΡ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠΌΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅.
ΠΠΎΠΏΡΡΡΠΈΠΌ, Π΅ΡΡΡ ΡΠ΅ΡΠ²ΠΈΡ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ 50 ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ. ΠΠΎΠ΄ Π½Π΅Π³ΠΎ ΡΡΠΎΠΈΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° ΡΠΎ ΡΠ»Π°Π±ΡΠΌ ΠΆΠ΅Π»Π΅Π·ΠΎΠΌ. ΠΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠ° Π½Π° ΡΠ΅ΡΠ²ΠΈΡ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π² ΡΠ°Π·Ρ. Π’ΠΎΠ³Π΄Π° ΡΠ»Π°Π±ΠΎΠ΅ ΠΆΠ΅Π»Π΅Π·ΠΎ Π½Π΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ.
ΠΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΡ Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, Π½Π° ΡΡΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠΈΠ½Ρ. ΠΠ° Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΠΌΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡΠ½ΠΎ ΡΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΡΡΡΠΎΠ² Π΄Π΅ΡΠΆΠΈΠΌ Π·Π°ΠΏΡΡΠ΅Π½Π½ΡΠΌΠΈ Β«ΠΏΡΠΎ Π·Π°ΠΏΠ°ΡΒ». Π ΠΏΠ΅ΡΠ΅ΠΏΠ»Π°ΡΠΈΠ²Π°Π΅ΠΌ Π·Π° ΠΏΡΠΎΡΡΠΎΠΉ.
Π ΡΠ°ΠΊΠΎΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ΅ΡΠ΅Π· Π³ΠΈΠ±ΡΠΈΠ΄Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄: Π·Π° Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠΌ Π½Π°Π³ΡΡΠ·ΠΊΠΈ ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌ ΠΎΠ΄Π½Ρ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΠΈ ΡΡΠ°Π²ΠΈΠΌ ΡΡΡΠ»ΠΊΡ Π½Π° Serverless Endpoint Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. ΠΡΠ»ΠΈ Π½Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ ΠΏΠΎΡΠΎΠ³ β Π±Π°Π»Π°Π½ΡΠΈΡΠΎΠ²ΡΠΈΠΊ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±Π΅ΡΡΡ Π½Π° ΡΠ΅Π±Ρ ΡΠ°ΡΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ².
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Serverless ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΌ, Π³Π΄Π΅ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ Π½Π΅ ΡΠ»ΠΈΡΠΊΠΎΠΌ ΡΠ°ΡΡΠΎ, Π½ΠΎ ΠΈΠ½ΡΠ΅Π½ΡΠΈΠ²Π½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΏΡΠΎΡΠΎΠ². Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ Π½Π° 15 ΠΌΠΈΠ½ΡΡ Π²ΡΠ³ΠΎΠ΄Π½Π΅Π΅, ΡΠ΅ΠΌ Π²ΡΠ΅ Π²ΡΠ΅ΠΌΡ Π΄Π΅ΡΠΆΠ°ΡΡ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ.
ΠΡΠΈ Π²ΡΠ΅Ρ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°Ρ Π±Π΅ΡΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΏΠ΅ΡΠ΅Π΄ Π²Π½Π΅Π΄ΡΠ΅Π½ΠΈΠ΅ΠΌ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΡΠΎΠΈΡ ΠΎΡΠ΅Π½ΠΈΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ ΡΠΌΠΎΠΆΠ΅Ρ ΡΠ΅ΡΠΈΡΡ Serverless Π² ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
Serverless ΠΈ Selectel
Π Selectel ΠΌΡ ΡΠΆΠ΅
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΈΠ΄Π΅ΠΈ, ΠΊΠ°ΠΊΠΎΠΉ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΈΠ΄Π΅Π°Π»ΡΠ½Π°Ρ FaaS-ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° ΠΈ ΠΊΠ°ΠΊ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Serverless Π² ΡΠ²ΠΎΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
, ΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ ΠΈΠΌΠΈ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
. ΠΡ ΡΡΡΠ΅ΠΌ Π²Π°ΡΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.
Β
ΠΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΡΡΠ°ΡΡΠ΅:
ΠΡΠΎΡΠ΅Π½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Serverless Π²ΡΡΠΎΡ Π² ΠΏΠΎΠ»ΡΠΎΡΠ° ΡΠ°Π·Π° (ΠΏΠΎΠ»Π½ΡΠΉ ΠΎΡΡΠ΅Ρ RightScale) ΠΠ°ΠΊ Π²ΡΠ΅ΠΌΡ Ρ ΠΎΠ»ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠ° Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠ·ΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com