
Бессерверные технологии взяли штурмом мир облачных вычислений, наблюдая огромный рост за последние несколько лет и очень позитивные прогнозы на будущее, при этом, согласно последним прогнозам, к 2028 году рынок будет расти совокупными темпами более 20% .
По сути, бессерверная архитектура раскрывает весь потенциал облачных технологий с помощью программного обеспечения для автоматизации ИТ, позволяя компаниям стимулировать рост вместо того, чтобы тратить время и ресурсы на управление ИТ-инфраструктурой.
Хотя это звучит многообещающе, бессерверные облачные платформы по-прежнему не сохраняют состояние и централизованы, поэтому приложениям необходимо устранить этот недостаток хранения состояния и избежать привязки к поставщику.
Интернет-компьютеры обеспечивают еще один уровень безопасности, контроля и доверия — и все это благодаря децентрализации, при которой ни одна сторона не контролирует аппаратное или программное обеспечение, и, кроме того, интернет-компьютеры предназначены для работы с отслеживанием состояния.
В этой статье мы описываем, как компьютерные блокчейны Интернета могут обеспечить возможности бессерверных вычислений с двумя важными дополнительными преимуществами: децентрализацией и сохранением состояния.
Что такое бессерверный?
Бессерверные технологии — это новая парадигма облачных вычислений, которая обеспечивает быстрые и гибкие циклы разработки без необходимости учитывать базовую инфраструктуру (предоставление и масштабирование нужных виртуальных машин, установку и обслуживание программного обеспечения и инфраструктур), тем самым снижая общие эксплуатационные расходы.
Бессерверная система существует во многих формах, наиболее актуальной в нашем случае является «Функции как услуга» (FaaS), где (большие базы кода делятся на) небольшие функции с очень коротким временем выполнения (от миллисекунд до минут) и функции используются для каждого использования. Взимается плата на основе (т. е. на основе времени работы) плюс фиксированная плата за вызов. Последняя важная особенность, о которой следует упомянуть, — это превосходная масштабируемость для запуска до тысяч экземпляров одной и той же функции за короткий период времени.
Интернет-вычисления как бессерверная платформа
Кратко взглянув на архитектуру Интернет-компьютера, вы легко заметите, что он предлагает бессерверные возможности и даже дополнительные преимущества.
Сегодня функции FaaS упаковываются в виде контейнеров или просто в виде кода (Python, Javascript, Java, Rust и т. д.) и предоставляют единую конечную точку, которую могут вызывать напрямую внешние пользователи или другие функции.
Смарт-контракты контейнеров на компьютерах в Интернете также могут быть запрограммированы на различных языках, включая Rust, Motoko, JavaScript или Python, и могут предоставлять несколько конечных точек, которые предоставляют разные функциональные возможности для каждого контейнера.
В следующей таблице приведены основные бессерверные возможности и соответствующие им компьютеры в Интернете, а также преимущества блокчейна перед бессерверными облачными технологиями:

Как видно из таблицы, интернет-компьютеры отвечают всем требованиям для бессерверной среды. Разработчики могут этого не знать, но они уже выполняют бессерверный код, как показывают наши исследования, почти с такой же эффективностью, как и то, что предлагают традиционные облачные провайдеры. такой же.
По некоторым параметрам (например, по объему памяти) интернет-компьютеры даже превосходят возможности традиционных облачных провайдеров. Однако наиболее важными возможностями, которые мы хотим выделить для разработчиков, являются: сохранение состояния и децентрализация, традиционное бессерверное облако не предоставляет этих двух функций.
В Таблице 2-3 мы предлагаем технически подкованному читателю углубиться в технические аспекты, которые делают Интернет-компьютер конкурентоспособной бессерверной платформой. Здесь важно отметить, что Интернет-компьютер имеет два типа исполнения смарт-контрактов — режим обновления и режим обновления. В режиме запроса первый представляет вызовы с сохранением состояния, а второй — без сохранения состояния, как и обычные бессерверные вычисления.


Сохранение состояния после выполнения функции — это долгожданная функция в бессерверном мире/мире FaaS, и ее очень сложно реализовать, поскольку она часто противоречит плавному типу масштабируемости, доступному в настоящее время в облаке.
К счастью, интернет-компьютеры с самого начала проектировались с учетом сохранения состояния и предоставляют разработчикам эту функциональность без необходимости какого-либо ручного вмешательства, такого как сохранение данных на внешнем уровне хранения или в базе данных, поэтому все переменные или данные будут автоматически сохраняется после вызова смарт-контракта на компьютере, подключенном к Интернету.
Децентрализация — еще одна важная характеристика, которую часто упускают из виду. Современные бессерверные продукты в настоящее время обслуживаются несколькими крупными централизованными облаками, что приводит к привязке к поставщику, где код и данные разработчика защищены так же, как и их поставщик, и уязвимы для географических сбоев или сбоев. простые изменения в политике поставщиков.
Интернет-компьютеры полностью децентрализованы: узловые машины работают в разных географических точках и работают под строгими гарантиями консенсуса, которые могут выдерживать даже византийские (злонамеренные) сбои.

Интернет-компьютеры и традиционные бессерверные платформы
Чтобы оценить производительность блокчейна Интернет-компьютера с точки зрения бессерверных облаков, мы провели тестовые вычисления с интенсивным использованием ЦП на Интернет-компьютере и одной из трех лучших бессерверных платформ. Для меньших входных данных Интернет-компьютер оказался лучше, чем традиционный бессерверный компьютер. Платформа Сервер быстрее, а для больших входных данных он лишь вдвое быстрее традиционного (см. результаты ниже).
Это очень обнадеживает и показывает, что, хотя еще предстоит пройти долгий путь, интернет-вычисления набирают обороты с точки зрения производительности по сравнению с традиционными централизованными облаками. Для получения более подробной информации мы рекомендуем ознакомиться с нашими недавними рецензируемыми статьями в престижном журнале. Конференция USENIX ATC:
usenix.org/system/files/atc23-arutyunyan.pdf

Повысить производительность
Дополнительные встроенные функции, такие как децентрализация и сохранение состояния, приводят к снижению производительности компьютеров Интернета при обработке больших рабочих нагрузок (см. рис. 2), и хотя эти функции являются мощными и важными, они также снижают общую производительность.

Инженеры и исследователи DFINITY будут продолжать искать и изучать способы улучшения производительности компьютеров в Интернете. Некоторые области улучшения могут заключаться в увеличении параллелизма или замене текущего уровня хранения на дерево слияний с журнальной структурой для сокращения времени контрольных точек.
Использование всех возможностей составных запросов для поддержки более сложных приложений также окажет положительное влияние на производительность. Уже началась работа над составными запросами, чтобы обеспечить горизонтальное масштабирование децентрализованных приложений и упростить клиентский код, позволяя выполнять запросы между подсетями и реплицировать выполнение. ведутся.
Создавайте бессерверные приложения на компьютерах в Интернете.

Запуск Enterprise Pilot на компьютерах, подключенных к Интернету

IC-контент, который вам важен
Технологический прогресс | Информация о проекте Глобальные события |

Собирайте и следите за IC Binance Channel
Будьте в курсе самой последней информации
