Перейти к основному содержимому

Работа с Redis из Serverless-функций

· 6 мин. чтения

Redis — это одна из самых популярных баз данных, используемая для кэширования и хранения данных. В этой статье мы рассмотрим, как работать с Redis из Serverless-функций в Yandex Cloud.

А именно, попробуем замерить время доступа к Redis из Serverless-функций и сравним его в разных условиях.

FastAPI в Serverless-функции

· 3 мин. чтения

У меня уже есть пост про то как запустить FastAPI в Serverless контейнере на Yandex Cloud, а также пост как в функции запустить популярные JS фреймворки. Пришло время взять понемногу из этих постов и запустить FastAPI в Serverless функции. Для этого нам понадобится python библиотека Mangum. Она не сказать что очень активно поддерживается. Это заметно и по истории коммитов и по тому что они упустили домен, где была документация и теперь там лежит рекламный блог. Недавно разработку подхватил другой разработчик. Восстановил документацию и это дает надежду на то что проект будет развиваться дальше.

Yandex Cloud Video. Часть 1

· 7 мин. чтения

Мне давно была интересна эта тема. Вот посты из 2021 года: Хранение видео в Yandex Cloud, Раздача видео из Yandex Cloud Object Storage и Ограничение доступа к HLS-видео при помощи шифрования AES-128. И хоть в них и описываются базовые принципы того как можно хранить и раздавать видео в облаке, но это лишь небольшая часть тех возможностей, которые предоставляет новый сервис.

схема сервиса

А теперь давайте посмотрим, что же там есть.

Ресурсы функции

· 9 мин. чтения

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

Паттерн Outbox

· 5 мин. чтения

Паттерн Outbox решает проблему двойной записи, которая возникает в распределенных системах, когда одна операция включает в себя как операцию записи в базу данных, так и отправку сообщения или уведомления.

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

Ошибка в одной из этих операций может привести к не консистентным данным.

Логирование в облачных функциях

· 4 мин. чтения

В принципе тут все просто и логирование в облачных функциях работает «из коробки». Т.е. все что вы залогируете во время выполнения функции будет доступно в Cloud Logging. Но есть некоторые нюансы, о которых я хочу рассказать.

Асинхронный вызов облачных функций в Яндекс Облаке

· 5 мин. чтения

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

Как организовать write-only доступ к Object Storage

· 4 мин. чтения

Write-only доступ к Yandex Cloud Object Storage может быть полезен в различных сценариях, когда вам нужно разрешить только запись данных в определенный бакет Object Storage, но не давать доступ к чтению данных из этого бакета.