https://github.com/Repinoid/gocloud
Yandex Cloud + GO + Serverless
Проект-минимум на Golang в Yandex Cloud c использованием Terraform, serverless функций, serverless Базы Данных, Очереди Сообщений и триггеров
1. Genesis. Настройка Command Line Interface, Terrafrom
2. Exodus. Создание функции - получение runtime-метрик c вывод на экран
3. Leviticus. Cоздание базы данных, функций записи метрик в таблицу
4. Numbers. OpenAPI - облачный HTTP рутер.
5. Deuteronomy. Cоздание триггеров и очереди

По таймеру запускается Serverless функция запроса метрик и отправки метрики в виде сообщения в Очередь
После получения сообщения триггером запускается Функция записи в Базу данных.
Функция считывает сообщение из Очереди, декодирует и пишет метрики в Базу данных
По HTTP юзер делает запросы, поступающие в API Gateway, который запускает функции работы с БД в соответствии с форматом HTTP-запроса
Предполагается, что у Вас есть полноценный аккаунт в Yandex
Пару лет назад я писал нечто подобное в Yandex Cloud, но на Питоне.
Так же использовались Serverless Functions, Yandex Data Base, триггеры, очереди и ещё IoT (Internet of Things)
Но для питона больше библиотек и куча примеров в сети, так что не составило большого труда разобраться.
С библиотеками под Golang не всё так просто - праkтически с каждой функцией по взаимодействию с ресурсами Облака пришлось немало и погуглить, и повозиться.
Будем считать, что я попытался подготовить готовый рецепт, который можно скомпиллировать, а затем менять сообразно своим замыслам.
Замечу, что и у функций, и ресурсов тарраформа гораздо больше параметров, чем использовал я.
Но проще же добавлять/менять в работающем коде, читая документацию, а её в Yandex Cloud очень много
Пре невысокой загрузке можно использовать ресурсы облака абсолютно бесплатно.
Например,
Каждый месяц не тарифицируются первые:
1 000 000 вызовов функций;
10 ГБ×час выполнения функций.
Начнём в п.1 с настройки облака и терраформа и будем добавлять функционал
Тема 1. Настройка Command Line Interface, Terrafrom
Telegram @IBM2702