Cloud Functions. Этот сервис в последнее время приобретает все большую популярность и в этом видео я бы хотел остановиться на том, что же это такое, для чего это нужно и как нам это может облегчить работу.

Давайте начнем с того, что услугу Cloud Functions предоставляют достаточно много компаний. Этот сервис, как правило, входит в один из видов сервисов, которые предоставляют облачные решения. 

Такие облачные решения предоставляют нам Яндекс.Облако, Google Cloud, Mail. облако и другие компании.

В чем же заключается суть этого сервиса?

С помощью этого сервиса мы можем запускать какие-то наши приложения или программы, которые мы написали на каком-то языке программирования на серверах компаний, которые предоставляют нам такие услуги. При этом, у нас нет необходимости иметь свой веб-сервер, на котором это все будет работать. 

По сути, наши функции, которые мы напишем на каких то языках программирования, выполняются в облаке т.е. на чужих серверах и у нас нет необходимости разворачивать свой сервер. Отсюда пошло такое определение serverless. Это можно перевести как "без сервера" и это означает не то, что скрипты выполняются вообще без сервера, а то, что у нас нет необходимости иметь свой сервер для того, чтобы запускать какие-то свои программы.

Эти программы будут выполняться в облаках каких-то крупных компаний, которые предоставляет нам эту услугу Cloud Functions.

Пожалуй, самое главное преимущество такого подхода - размещение выполнения скриптов в облаке. У нас нет необходимости устанавливать и поддерживать какое-то программное обеспечение, которое нужно для работы приложения.

Нам не нужно устанавливать какое-то окружение, которое необходимо для работы языков программирования, для поддержки, для обновления этого всего. Эту всю работу берет на себя компания, которая предоставляет эту услугу. 

Cloud Functions - это, конечно, очень большой плюс, тем более, если вы не очень владеете навыками системного администрирования, то для вас такой вариант может значительно упростить жизнь.

Второе преимущество, которое делает очень выгодным применение Cloud Functions - это плата только за вызовы этих самых функций. Сколько раз мы вызвали на выполнение эти функции, сколько по времени они выполняются, столько мы и платим. Причем, эта плата достаточно небольшая и за миллионы вызовов этих самых функции мы платим всего лишь какие-то единицы, десятки рублей. 

Если сравнить эту стоимость, например, со стоимостью виртуального сервера (виртуальной машине в облаке), то там вы платите постоянно. 

Например, минимальная цена там от 300 рублей на текущий момент и может подниматься выше в зависимости от мощности сервера и компании, с которой вы будете работать.

Плата за вызовы функции в облаке может быть значительно меньше, тем более, если ваш проект только развивается. В этом случае будут единицы посещений, вы практически ничего не будете платить.

Подводя итог, Cloud Functions - это такие функции, которые могут вызываться на практически любом языке программирования. 

Как правило, это такие языки программирования как python, php, Go и так далее.

Стоит или не стоит вам это использовать решать, конечно, вам. В зависимости от от того проекта с которым вы работаете, соответственно, делать такое решение.

Для каких-то простых приложений которые вызываются несколько раз в день, этот вариант, по моему, является наиболее оптимальным и наиболее выгодным.