Бессерверные вычисления: почему некоторые разработчики упускают главное?

На эту тему перевели для вас интересные и достаточному простые мысли дата-инженера Анны Аннисени.

77

Как активный пользователь Y.functions могу сказать следующее - напрямую их использовать немного страшно, так как флудер легко может покушать ваши деньги. Поэтому оборачиваю в cloudflare.workers, тогда можно придумать и простейший csrf, и вписаться в бесплатный лимит, и сделать базовые методы защиты в духе csrf. Лично мне не хватает дешевого serverless KV-хранилища(такое есть у cf от 5$ в месяц вместе с прочими плюшками) для простейшей логики, платить за Redis дороговато для простого интернет-магазина(про RDBMS речи нет вообще, serverless тоже не хватает, но хотя бы KV). В итоге приходится делать следующую связку:
- cf as nginx
- cf as proxy for Y.functions
- persistance storage at S3/B2/YOS, cache on cf
получается дешево и приятно. Но пока нет под это хорошего фреймворка приходится писать кучу легаси-кода и интегрировать несколько систем.
Serverless прекрасен и его уже можно использовать как PoC или mvp для несложных сайтов/ИМ, но это легаси-легаси.

Я понимаю, что развернуть CMS на serverless легко и если у вас фронт отдельно(грузим в s3/b2/yos), бек отдельно(api на serverless или кеш в s3/b2/yos), то получается всё красиво, но если у вас CMS(для примера django framework с внутренним jinja шаблонизатором), то serverless для средненагруженного сайта без защит может скушать как простая vds(а учитывая, что базово для CMS нужен RDBMS/Redis/memcached, то влетает в копеечку). В итоге приходится рисовать костыли в виде легаси или юзать это для решения каких-то частичных задач. В общем, коробки не хватает под это и кучки сервисов рядом(serverless KV, serverless RDBMS, balancer/router/antiddos). Уже сейчас мы имеем интернет-магазины со не очень большой посещаемостью за копейки в месяц, но это легаси и не каждый масс-маркет разработчик это поймет и сможет связать. Им проще взять хост за 100 руб в месяц и установить, условно, wordpress - поэтому они еще не юзают Y.functions. А если к вам заказчик приходит с запросом какой-нибудь Magento/Bitrix, то тут уже никаким serverless as main не пахнет, только под микросервисы. Такие проблемы.

2

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

кстати, еще момент по установке пакетов - их можно протащить с собой на борт, но это немного tricky. делать это через инсталлер пакетов внутри редактора было бы куда удобнее.

3

приходится писать кучу кода ради экономии на vps, чтобы поставить redis? великолепная математика

интересно либо сколько у тебя стоит написать кучу кода (300рублей чтоли?) или сколько тебе заплатили яндекс.клоуд, чтобы ты заманивал в эти сети

по итогу я видел как такие заманившиеся за обычные пару сервисов, где хватил бы vps за 20 евро, платят по 800-1200 евро в месяц за «умные» слова

разводка на уровне наперсточника на базаре

1

Уточните пожалуйста насчет
- cf as nginx
- cf as proxy for Y.functions
1) cf - в данном случае это Cloudflare Workers?
2) Если ответ на вопрос 1 да, то как маршрутизируете в воркерах и как отсекаете флудеров чтобы они не долбились в Y.functions?

Скажите а почему не хотите в качестве serverless KV-хранилища попробовать использовать Yandex Database в режиме serverless?