Привет, Хабр! Меня зовут Антон. Примерно год назад я начал работать с Serverless — и был покорён этим подходом к разработке приложений. Несмотря на определённые недостатки и ограничения, потенциал бессерверных вычислений огромен, за ними большое будущее. Очень приятно, что честь стать первым куратором хаба Serverless выпала именно мне. Мои задачи — находить интересные материалы, показывать новые возможности и помогать тем, кто интересуется этой архитектурой. В первом посте я собрал статьи разных авторов с Хабра, которые знакомят с идеей Serverless-подхода и помогают разобраться, для чего её лучше всего применять. В этом разделе я собрал статьи об основах Serverless: какие технология даёт преимущества, для каких задач применяется, что для этого надо, как не переплатить провайдеру. Раздел поможет новичкам систематизировать знания и избежать основных ошибок. • Советы и источники информации для создания бессерверных приложений Для чего нужна бессерверность в принципе, в каких ситуациях она особенно хороша. Знакомимся с самыми распространёнными заблуждениями и мифами о Serverless. Автор рассказывает о выборе инструментов и вендора, управлении расходами и мониторинге, особенностях цикла разработки и методиках сборки бессерверных приложений. • Serverless по стоечкам Рассмотрим преимущества и недостатки технологии с разных точек зрения — разработчика и провайдера. Разбираемся, как устроен процесс разработки Serverless-приложений и почему они выгодны для интенсивной, но не слишком частой обработки большого количества запросов. • Как защититься от неожиданных счетов за AWS Как рассчитать бюджет при работе с Serverless: на примере AWS учимся избегать сюрпризов с оплатой. Автор объясняет, как бессерверные решения масштабируются в зависимости от поступающего трафика и почему однажды вместо привычных 20 центов в месяц можно выложить 2–3 тысячи долларов. Как снижать затраты, увеличивать производительность, масштабировать проекты, работать с большими данными и фронтендом. • Что такое бессерверный SQL? И как использовать его для анализа данных? Как работает бессерверный SQL: быстрый запрос из любых баз данных без необходимости администрировать серверы. Вместе с автором разбираем сценарий разведочного анализа на примере исследования данных нью-йоркского такси из открытого источника. • Почему разработчики не дружат с Serverless Аргументы Serverless-скептиков: любая технология не лишена недостатков и ограничений. Бессерверные вычисления тоже не идеальны, это отнюдь не панацея. • Как повысить производительность, используя бессерверную архитектуру Как сделать бессерверную архитектуру инструментом масштабирования и снизить с её помощью нагрузку на собственное железо. Статья рассказывает о том, как перенести процесс предварительной обработки изображений с сервера приложений на Serverless-архитектуру. • Serverless и React 2: ловкость рук и никакого мошенничества Шаг за шагом рендерим React/Redux-приложение в Serverless-архитектуре, обсуждаем плюсы и минусы решения. Автор популярно объясняет — практически разжёвывает — нюансы использования бессерверных подходов во фронтенд-разработке. Много картинок и кода. Разбираемся с прикладными инструментами, которые помогают в работе с Serverless. Kotlin Serverless Framework упрощает создание Serverless-приложений путём анализа кода на Kotlin. OpenFaaS создаёт Serverless-функции поверх контейнеров. В разделе есть статьи, описывающие подходы к автоматизации процесса релиза для Serverless-функций через их обновление из Git-репозитория, и преимущества Serverless с точки зрения DevOps, а также — с точки зрения безопасности работы с бэкендом приложения. • Простой путь к Serverless-вычислениям Гайд от одного из разработчиков инструмента Kotlin Serverless Framework. Автор упрощает создание Serverless-приложений путём анализа кода приложения — по сути, делает всё необходимое для развёртывания текущего приложения в облаке.  • Представляя функции как сервис — OpenFaaS OpenFaaS — фреймворк для создания Serverless-функций поверх контейнеров. У FaaS есть привязки для родного API у Docker Swarm и Kubernetes, с его помощью каждый процесс может стать Serverless-функцией с помощью компонента watchdog и контейнера Docker. Читают все, кого интересует тема Serverless под Kubernetes. Бонус: автор не только презентует свой инструмент, но и приводит приличный список альтернатив. • Автоматический деплой Serverless-функций из Git Один из подходов к практической бессерверной разработке. В материале объясняется, как автоматизировать процесс релиза для Serverless-функций через их автоматическое обновление из Git-репозитория. Например, добавлять исполнителя в зависимости от тегов, двигать задачу на определённый milestone или просто закрывать противные баги. • Некоторые неочевидные преимущества Serverless для DevOps Очевидные и не очень преимущества Serverless с точки зрения DevOps, а также — с точки зрения безопасности работы с бэкендом приложения. Подход не лишён недостатков, да и переход на бессерверную схему связан с определёнными заморочками. Но когда мы с ними разберёмся, то уже не будем терять время на промежуточные варианты в виде докера, а сразу выйдем на следующий уровень. Личный опыт и примеры, которые можно использовать. Используя эти гайды, вы сможете написать приложение для сбора данных пульсовой оксиметрии, их отслеживания и обмена ими, создать простого Serverless-бота и подключить его к базе данных, интегрировать Slack в качестве Serverless-бэкенда или даже построить собственный бесплатный Serverless на основе Fn. • Serverless-телеграм-бот с использованием «Яндекс.Облака» Создаём простого Serverless-бота как заготовку для различных модификаций с использованием Yandex Cloud Functions. Подробный туториал, всё расписано максимально просто для совсем начинающих Python-программистов.  • Подключение Yandex Database к Serverless-телеграм-боту Как подключить Serverless-бота к базе данных. Шаг за шагом: как подготовить базу к подключению, установить зависимости, добавить таблицу для хранения пользователя, сохранить информацию о входящем пользователе в сообщении «Телеграма», а затем получить информацию и отправить её пользователю из базы данных. • Создание трекера пульсоксиметрии с использованием Serverless Гайд по созданию решения для сбора данных пульсовой оксиметрии, отслеживания этих данных и обмена ими — и всё это для нескольких пользователей. Бессерверный бэкэнд обрабатывает пользовательские данные и управление общим доступом. Код написан на Python для обработки бизнес-логики взаимодействия с базой данных Amazon DynamoDB. Serverless-подход в данном случае обеспечивает надёжную масштабируемость и безопасность. • Создаём бессерверное приложение с помощью Azure Functions и Go Интегрируем Slack в качестве Serverless-бэкенда. Получаем общее представление о пользовательских обработчиках (Custom Handlers) в Azure Functions благодаря разбору кода. Логика бэкенд-функции написана на Go (код доступен на GitHub). • Строим собственный Serverless на основе Fn Как использовать бесплатные альтернативы с открытым исходным кодом для организации бессерверных вычислений. Разбираемся с Fn — одним из таких решений. Как хабровчане применяют Serverless на практике. Здесь вы прочитаете о том, как использовать бессерверность для работы с Big Data, ускорить разработку приложений — на примере сервиса для загрузки видео — и свести расходы на использование Serverless к минимуму. • Serverless-подход для быстрой разработки рабочего видеосервиса Кейс с выводами о преимуществах Serverless-подхода и его недостатках. Автору нужно было за месяц разработать промосервис, где пользователи загружают от одного до четырёх видео длительностью от одной до четырёх секунд, которые потом встраиваются в оригинальный видеоряд. Бессерверные технологии помогли, хотя не всё прошло гладко. • Архитектура и стоимость простого бессерверного веб-приложения AWS Как создать Serverless-инструмент, позволяющий реализовывать практически любые фантазии за 59 центов в месяц. В описанном приложении автор не платит ни за что, кроме таблицы DynamoDB. • Snowflake, Anchor Model, ELT и как с этим жить Serverless-подход к работе с большими данными: как отойти от скучных классических OLAP-решений в виде Vertica или Exasol и попробовать редкую, но вполне эффективную облачную DWaaS (Data Warehouse as a Service) Snowflake в качестве основы для хранилища. На этом пока всё. Предлагайте следующие темы, задавайте вопросы в комментариях к подборке или пишите в наше телеграм-сообщество Yandex Serverless Ecosystem, где можно задать вопросы по Serverless-архитектуре и пообщаться с разработчиками Yandex.Cloud по сервисам нашей экосистемы. Podcaster & Developer Advocate