Найти тему
ServerNews

Cloudflare Workers Unbound поборется с AWS Lambda и другими serverless-платформами

Cloudflare представила новую serverless-платформу Workers Unbound, которая отличается низкой ценой, высокой скоростью работы, лёгким масштабированием и, как утверждает компания, минимальным временем холодного запуска, которое буквально стремится к 0 мс.

Изначальный продукт Cloudflare Service Workers дебютировал в 2017 году и поддерживал только JavaScript и Rust, к которым впоследствии добавились C и C++. Как и прочие serverless-решения он использует событийную модель для обработки запросов: запуск функции при появлении запроса, кратковременная её работа и выключение. Реализована такая система и для периферийных вычислений, то есть данные обрабатываются в непосредственной близости от их источника, что, к слову, важно для соблюдения законодательства во многих странах — информация не передаётся в удалённый ЦОД, находящийся на чужой территории.

В 2018 году в дополнение к Cloudflare Service Workers была запущено key:value хранилище Workers KV. Оба этих продукта были предназначены для использования клиентами Cloudflare, да и сама компания активно их использует для поддержки и реализации многих своих сервисов, включая внутренние. По словам компании, данной платформой с момента запуска воспользовались более 20 тыс. разработчиков.

-2

Workers Unbound развивает эту идею и готов побороться с другими serverless-платформами крупных облачных игроков: AWS Lambda (@Edge), Microsoft Azure Functions и Google Cloud Functions. Причём решение Cloudflare будет на 75%, 24% и 52% дешевле соответственно, заявляет компания, а скорость исполнения кода может отличаться на порядки. Автомасштабирование и стремящаяся к нулю скорость холодного старта также ускоряют работу.

-3

Список поддерживаемых для написания функций языков дополнился Python, Scala, Kotlin, Reason и Dart. Впоследствии его можно будет расширить. Но тут есть некоторая хитрость, которая частично обуславливает быстроту работы Workers Unbound. Технически весь код исполняется внутри движка V8, так что исходники на самом деле транслируются в JavaScript. Это, с одной стороны, накладывает ограничение на поддержку библиотек или специфичных вызовов. С другой — накладные расходы для V8 существенно ниже любых систем виртуализации, которые лежат в основе большинства других serverless-решений.

-4

Движки V8 развёрнуты на тех же машинах, что и брандмауэры и другие edge-сервисы Cloudflare — новая функция может быть развёрнута по всему миру в течение 15 секунд. Отдельно отмечается, что эти серверы построены на достаточно высокопроизводительных процессорах, которые к тому же не троттлят. Программная платформа этих машин жёстко оптимизирована для обработки трафика. Для Workers Unbound запуск (прогрев) функции начинается уже в момент установки TLS-соединения.

Бесплатный тариф имеет ограничение на обработку не более 100 тыс. запросов в день, а время выполнения каждого не может превышать 10 мс. В тарифе Bundled время исполнения увеличено до 50 мс, а запросы оплачиваются отдельно: $5 за 10 млн. запросов в месяц. Максимальное число функций в обоих случаях — не более 30. Cloudflare Workers Unbound пока находится в состоянии беты.