Dotnet 6 Web API в Yandex Cloud Serverless Container
Для начала создадим проект на основе примера Web API.
Для начала создадим проект на основе примера Web API.
В прошлом Serverless Full Text Search я рассмотрел JavaScript библиотеку для in-memory полнотекстового поиска Lyra. Почему я выбрал именно ее? Во-первых, именно на доклад про неё я наткнулся на YouTube. Во-вторых, мне понравилась её универсальность и возможность притащить её в браузер.
Если вы для своего проекта выбрали serverless стек, то наверняка вы заметили, что в Яндекс Облаке для него нет решения обеспечивающего полнотекстовый поиск. Ну, то есть вы конечно можете поднять кластер ElasticSearch. Но при его минимальной стоимости и выделяемых ресурсах это наверняка будет стрельбой из пушки по воробьям.
Но что же делать, если хочется сохранить низкие расходы на инфраструктуру и получить быстрый полнотекстовый поиск?
Итак, у вас есть цель выполнять какую-то задачу внутри serverless контейнера по расписанию. К сожалению, вы не сможете просто взять положить в контейнер ваш код и надеяться что все заработает просто так.
Сегодня я хотел бы разобрать модель работы облачных функций в Яндекс Облаке.
Для этого нам понадобится serverless функция.
Часто нужно передать в функцию какой-то секрет. Например, ключ доступа в стороннее API. Его можно передать через переменные окружения, но в таком случае он будет храниться в открытом виде.
Начнем с того, что набросаем небольшого тестового бота поверх фреймворка Telegraph.
К сожалению просто так взять и запустить приложение написанное на любом популярном node.js фреймворке у нас не выйдет. Эти фреймворки пишут ответ в http(s) сокет. Рантайм функций ожидает получить от пользовательского кода функции объект определенного содержания.
В первой части мы закончили на том, что запустили Apollo в облаке. Но это слишком простое API. Поэтому сейчас добавим интеграцию с Severless YDB.