WebSocket за Application Load Balancer в Yandex Cloud
Как и обычно туториал я начну с небольшого кода приложения, которое мы будем использовать для наглядности. Код ни разу не production ready, а скорее минимально необходимый для демонстрации.
Как и обычно туториал я начну с небольшого кода приложения, которое мы будем использовать для наглядности. Код ни разу не production ready, а скорее минимально необходимый для демонстрации.
Cloud Logging отличный сервис для просмотра логов. Но у него есть одно ограничение — время хранения. Сейчас, пока сервис в стадии превью это 3 дня, позже с выходом в General Availability это время вероятно увеличат, но все равно оно вряд ли будет бесконечным, и уж тем более это не будет бесплатно.
А теперь вопрос: что делать если вам хочется (ну чтобы через год сравнить) или необходимо (по каким-нибудь юридическим или регуляторным причинам) хранить логи достаточно продолжительное время, от года и более. А еще делать это максимально просто и дешево.
Решение есть! А самое прекрасное, что нам почти не понадобится нечего дополнительно настраивать, если вы уже настроили поставку логов через Fluentbit, как я рассказывал в двух предыдущих постах про поставку логов из контейнера.
Для этого нам понадобится serverless функция.
Давайте сначала разберемся на сколько все плохо.
Итак, вам понадобилось развернуть удаленный рабочий стол на Ubuntu. Вот как это сделать.
Его нет. И вообще это плохая идея и вот почему.
В прошлой статье я рассказал, как и зачем хранить видео в формате HLS. Теперь стоит уточнить пару нюансов как правильно настроить раздачу этого контента.
Если вам нужно добавить на свой сайт видео, то может возникунуть вопрос где его хостить и как потом раздавать. В этом посте я постараюсь разобрать варианты и дать примеры использования Yandex.Cloud Object Storage.
Формат файла mp4 знаком наверное всем. Но стоит если мы хотим показывать видео на сайте эффективно стоит задуматься лучшее ли это решение для нашей задачи — просто выложить все видео одним mp4-файлом?
Часто нужно передать в функцию какой-то секрет. Например, ключ доступа в стороннее API. Его можно передать через переменные окружения, но в таком случае он будет храниться в открытом виде.
Пара примеров использования АПИ из Python
Скрипт для озвучивания длинного текста.
Как привязать свой домен к бакету в объектном хранилище Yandex Cloud.
К сожалению просто так взять и запустить приложение написанное на любом популярном node.js фреймворке у нас не выйдет. Эти фреймворки пишут ответ в http(s) сокет. Рантайм функций ожидает получить от пользовательского кода функции объект определенного содержания.
Yandex Cloud Serverless Functions позволяют развертывать приложения в облаке не тратя время на администрирование серверов. Вы платите только за те ресурсы, которые ваше API потребляет обрабатывая запросы пользователей. Этот пост расскажет как развернуть Apollo Server 2 в Yandex Cloud Functions.
В предыдущих постах я рисовал пояснительные диаграммы в draw.io. Это крутой инструмент, но проблема в том, что если я заметил опечатку в картинке, то чтобы поправить ее мне нужно найти, где я сохранил эту диаграмму, поправить руками и перерендерить файл с диаграммой. Мне стало интересно можно ли делать по-другому.
И я нашел инструмент для декларативного описания диаграмм и их рендеринга. Была маленькая проблема, что там не было иконок для Yandex.Cloud. Но я это поправил.
UPD: Yandex Cloud представили новый runtime для функций — C#. Ну и мне тут же захотелось его попробовать. Поэтому я дописал реализацию этой функции еще и на csharp. https://github.com/nikolaymatrosov/yc-on-the-fly-thumbnailer-csharp/blob/master/OnTheFlyResize/Handler.cs