Бессерверное Cpaas – Как Voximplant Предвидел Этот Ажиотаж

В этом году мы перевел хорошую статью о концепции Serverless: автор показал «на пальцах», что это такое и зачем.

Мы также знаем и помним, что наши европейские партнеры уже давно окрестили нашу платформу Serverless. CPaaS – чтобы наглядно это подтвердить, выступил 16 октября на конференции наш генеральный директор Алексей Айларов.

Дни API в Амстердаме.

Алексей объяснил, почему Serverless CPaaS скоро станет повсеместным и как оказалось, что Voximplant — внезапно — воплотил этот подход с самого начала.

Ниже вы найдете текстовую адаптацию выступления; выдержки из презентации прилагаю.

Добро пожаловать!

Бессерверное CPaaS – как Voximplant предвидел этот ажиотаж



Раньше было лучше (с)

Перед CPaaS бизнес был вынужден проделать огромный объем подготовительной работы: сначала нужно было выбрать оператора связи.

Дальше нужно было выбрать бэкенд и создать для всего этого инфраструктуру (например, взять программную АТС Asterisk/FreeSWITCH и файл).

В помощь этой АТС можно еще собрать бэкенд на условном node.js. И только после этого решить, где и как будет реализована бизнес-логика, а затем развернуть ее, настроить мониторинг и убедиться, что все это работает. Не развалится в процессе работы.

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



Бессерверное CPaaS – как Voximplant предвидел этот ажиотаж

CPaaS позволял пропустить низкоуровневые шаги и сразу перейти к бизнес-логике: для этого клиенту нужно было изучить коммуникационную платформу, а потом… инфраструктуру, развертывание, мониторинг.

С одной стороны, вам больше не придется думать о том, каким будет бэкенд, и искать оператора связи.

За счет этого сокращается время запуска без потери качества.

С другой стороны, нам еще многое предстоит сделать.



Добро пожаловать без сервера



Бессерверное CPaaS – как Voximplant предвидел этот ажиотаж

А потом случился Serverless. И здесь нужно сосредоточиться на ключевом моменте – почему меньше? Расчеты должны где-то происходить.

Бессерверность означает не отсутствие серверов вообще, а их отсутствие на стороне клиента.

Эта концепция предполагает сочетание поставщика вычислений и разработки на стороне клиента.

Клиенту не нужно содержать собственную инфраструктуру, ему просто нужно платить вычислительному провайдеру за.

расчеты :) То есть расходы есть только тогда, когда есть необходимость в расчетах - это гораздо выгоднее, чем например , оплачивая аренду серверов 24/7, когда нет реальной необходимости использовать эти серверы 24/7. Отсутствие инфраструктуры приводит ко второму важному преимуществу подхода: не нужно думать о масштабируемости, ведь автомасштабирование обеспечивает провайдер.

Для devops чаще всего используют бессерверный фреймворк (например, Фн проект или бессерверный — ох, ирония), что упрощает разработку и сборку приложений.

Платформа также может предоставлять дескрипторы событий; это удобно, потому что бессерверность — это именно событийная концепция (примеры из телефонии: пришёл звонок — это событие, на звонок ответили — это событие и т. д.).

Добавляем в CPaaS бессерверные возможности и получаем условный Voximplant. В результате отпадает «инфраструктурный» шаг — бизнес изучает конкретную Serverless CPaaS, реализует на ней бизнес-логику и спокойно следит за тем, как все это работает, не заботясь о покупке стоек, серверов, поиске места под серверную и т. д. Конечно, это идеальный случай и каждое решение уникально: возможно, клиенту может понадобиться какое-то оборудование на своей стороне, но Serverless делает все возможное, чтобы у клиентов не возникало таких потребностей.



Улучшение пользовательского опыта

Иногда бессерверные платформы делают т.н.

Функции являются посредниками между клиентом и другими сервисами (концепция ФааС ).

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

Здесь также можно обрабатывать веб-перехватчики и взаимодействия, специфичные для телекоммуникаций.

Однако этот уровень имеет ограничения:

  • ограниченное время исполнения;
  • неизменяемый контекст (без сохранения состояния);
  • обработка вызовов отделена от среды выполнения платформы, поскольку связь осуществляется через HTTP.


Бессерверное CPaaS – как Voximplant предвидел этот ажиотаж

Архитектура Voximplant с самого начала делала среду выполнения доступной для клиентов, поэтому управление вызовами осуществляется с помощью JS-скриптов, а не строго через HTTP. Интегрированная среда выполнения обеспечивает ряд преимуществ:
  • облачные JS-скрипты поддерживают новейший языковой стандарт — ECMA2018;
  • используется в скриптах собственный API платформы ;
  • контроль в режиме реального времени: обработка событий и выполнение функций происходят мгновенно;
  • вы можете использовать отладчик с остановкой и состояниями;
  • На обработку ошибок можно назначить что угодно, включая голосовые уведомления для людей.

    Пример обработки ошибок на основе событий:

       

    function onHttpRequestFailed() { call.say(“Unfortunately, we couldn’t process your request, please try again later”, Language.US_ENGLISH_FEMALE) call.addEventListener(CallEvents.PlaybackFinished,(e) => { if (destroy) VoxEngine.terminate() else tryAgain() }) }

Событийный подход особенно важен, потому что а) это унифицированный подход, б) он добавляет гибкости.

Любое действие можно интерпретировать как событие и обработать в облачном JS-скрипте: ответить на входящий звонок с помощью синтезатора голоса, распознать голосовую почту и положить трубку, перевести звонок на SIP, вызвать push-уведомление и т. д.

Бессерверное CPaaS – как Voximplant предвидел этот ажиотаж

В результате наша бессерверная платформа снижает задержку, улучшает пользовательский опыт и, в конечном итоге, минимизирует время, необходимое для запуска готового продукта: если в «эру до CPaaS» это могло быть шесть месяцев, то с Voximplant вы можете в течение 1 месяца (с учетом всех согласований и встреч, реальное время разработки еще меньше).



Будущее

Платформы связи, основанные на принципе Serverless, будут пользоваться все большим спросом, поскольку спрос на эти услуги растет, как и функциональность самих платформ.

Вскоре Serverless CPaaS сможет предложить хранение данных, глубокую интеграцию с внешними системами (хороший пример — наша Соединитель диалогового потока ), функционал веб-сервера, наконец-то :) Перспективы радужные, остается только следить за реализацией и наслаждаться прогрессом концепции Serverless. Теги: #Разработка мобильных приложений #программирование #Разработка веб-сайтов #Serverless #JavaScript #voximplant #CPaaS

Вместе с данным постом часто просматривают: