Бэкэнд как услуга
Серверная часть как услуга ( BaaS ), иногда также называемая мобильной серверной частью как услуга ( MBaaS ), [1] [2] [3] — это сервис, предоставляющий разработчикам веб-приложений и мобильных приложений возможность легко создавать серверную часть для своих внешних приложений. Доступные функции включают управление пользователями, push-уведомления и интеграцию со службами социальных сетей . [4] Эти услуги предоставляются посредством использования специальных комплектов разработки программного обеспечения (SDK) и интерфейсов прикладного программирования (API). BaaS — относительно недавняя разработка в области облачных вычислений. [5] при этом большинство стартапов BaaS датируются 2011 годом или позднее. [6] [7] [8] Некоторые из наиболее популярных поставщиков услуг — AWS Amplify и Firebase .
Цель
[ редактировать ]Веб-приложениям и мобильным приложениям требуется аналогичный набор функций на серверной стороне, включая службу уведомлений , интеграцию с социальными сетями и облачное хранилище . [9] [10] Каждая из этих служб имеет свой собственный API , который необходимо индивидуально включить в приложение — процесс, который может занять много времени и усложнить для разработчиков приложений. [11] Поставщики BaaS образуют мост между интерфейсом приложения и различными облачными серверами посредством унифицированного API и SDK . [3]
Обеспечение единообразного управления внутренними данными означает, что разработчикам не нужно заново разрабатывать собственный серверный интерфейс для каждой службы, к которой их приложения должны иметь доступ. [10] потенциально экономит время и деньги. [11] [12]
Хотя BaaS похож на другие бизнес-модели облачных вычислений, такие как бессерверные вычисления , программное обеспечение как услуга (SaaS), инфраструктура как услуга (IaaS) и платформа как услуга (PaaS), BaaS отличается от этих других услуг тем, что он специально удовлетворяет потребности разработчиков веб-приложений и мобильных приложений в облачных вычислениях, предоставляя унифицированные средства подключения их приложений к облачным сервисам. [13]
Функции
[ редактировать ]Поставщики BaaS предлагают различный набор функций и серверных инструментов. [14] Некоторые из наиболее распространенных функций включают в себя:
- базой данных Управление . Большинство решений BaaS предоставляют услуги управления базами данных SQL и/или NoSQL для приложений. [15] Разработчики могут хранить данные своих приложений без самостоятельного развертывания баз данных и управления ими. BaaS обычно предоставляет клиентские SDK , REST и GraphQL API-интерфейсы для взаимодействия внешнего интерфейса с базами данных.
- Хранилище файлов . Поставщики BaaS часто предлагают решения для хранения медиафайлов, пользовательских загрузок и других двоичных данных. Приложения могут загружать, скачивать и удалять файлы с помощью предоставленных SDK и API .
- Аутентификация и авторизация . Некоторые BaaS предлагают службы аутентификации и авторизации, которые позволяют разработчикам легко управлять пользователями приложений. [15] Сюда входит регистрация пользователя, вход в систему, сброс пароля, интеграция входа в социальные сети через OAuth , управление группами пользователей и разрешениями и т. д.
- Служба уведомлений . Некоторые поставщики BaaS, такие как Firebase и AWS Amplify, имеют службы уведомлений, которые могут отправлять пользователям специальные электронные письма и отправлять собственные уведомления на мобильные платформы. [16] [17] Это особенно полезно для приложений, которым необходимо отправлять сообщения, оповещения и напоминания.
- Облачные функции . Некоторые BaaS позволяют разработчикам развертывать и запускать бессерверные функции. Функции обычно не сохраняют состояние и могут запускаться различными способами, включая HTTP-запросы , вызов SDK, фоновые события сервера и выполнение по расписанию в облаке. [18] [19] Различные провайдеры предлагают поддержку разных языков во время выполнения , некоторые из популярных языков — JavaScript / TypeScript ( Node.js , Deno ), Python , Java / Kotlin . [18] [19] [20] Облачные функции расширяют потенциал и гибкость BaaS, позволяя разработчикам писать собственные функции для своих приложений, работая аналогично традиционной платформе REST API серверной . [21]
- Аналитика использования . Аналитические данные об использовании приложений часто включаются в BaaS. Это позволяет разработчикам отслеживать поведение пользователей и принимать соответствующие решения по маркетинговым стратегиям и оптимизации производительности. [22] [23]
- Дизайн пользовательского интерфейса . Некоторые поставщики BaaS, такие как AWS Amplify и Backendless, предлагают инструменты проектирования пользовательского интерфейса, которые помогают разработчикам создавать внешний интерфейс веб- и мобильных приложений. [24] [25] Хотя это может быть полезно для небольших команд и отдельных разработчиков, помощь в проектировании пользовательского интерфейса может быть необычной для BaaS, поскольку выходит за рамки внутренней инфраструктуры.
- В реальном времени . Функции реального времени на платформе BaaS гарантируют мгновенное обновление и синхронизацию данных для всех клиентов, благодаря чему изменения сразу становятся видимыми для пользователей. Это крайне важно для таких приложений, как онлайн-чат и инструменты для совместной работы, использующие такие технологии, как WebSocket WebSockets, для поддержания непрерывных соединений между сервером и клиентом.
Поставщики услуг
[ редактировать ]Поставщики BaaS имеют широкую направленность, предоставляя SDK и API , которые работают для разработки приложений на нескольких платформах с различными стеками технологий, такими как JavaScript (для веб-приложений), Flutter , Java / Kotlin (для Android приложений ), Swift / Objective-C ( для iOS / MacOS / WatchOS / TvOS приложений ), .NET (для Windows ) и других. Поставщики BaaS также бывают разных типов, подходящие разработчикам с разными потребностями.
Облачное BaaS
[ редактировать ]Большинство провайдеров BaaS размещают серверные платформы на своих облачных серверах. [26] Они также управляют инфраструктурой, безопасностью и масштабируемостью платформ. Разработчики могут получить доступ к серверным службам через веб-интерфейс или предоставленные API . [15] Некоторые примеры облачных BaaS включают Firebase (размещенный на Google Cloud Platform ), AWS Amplify (размещенный на Amazon Web Services ) и Microsoft Azure мобильные приложения (размещенные на Microsoft Azure ).
Автономное BaaS
[ редактировать ]Самостоятельное размещение BaaS позволяет разработчикам размещать серверную часть на своих собственных серверах, обеспечивая большую гибкость и возможности настройки по сравнению с облачным BaaS, с которого зачастую труднее перейти. Однако разработчики также отвечают за управление инфраструктурой, безопасностью и масштабируемостью своих серверов. [15] [26]
Мобильное BaaS
[ редактировать ]Мобильный сервер как услуга (MBaaS) — это тип BaaS, специально предназначенный для приложений, развернутых в мобильных системах . Хотя в некоторых источниках MBaaS используется как взаимозаменяемое понятие BaaS, BaaS может иметь более широкую поддержку, например, для веб-приложений и настольных приложений. [27] [28]
Бизнес-модель
[ редактировать ]Поставщики BaaS получают доход от своих услуг различными способами, часто используя модель freemium . В рамках этой модели клиент получает определенное количество бесплатных активных пользователей или вызовов API в месяц и платит комиссию за каждого пользователя или вызов сверх этого лимита. Альтернативно, клиенты могут заплатить фиксированную плату за пакет, который позволяет увеличить количество звонков или активных пользователей в месяц. [10] Существуют также планы с фиксированной оплатой, которые делают цены более предсказуемыми. Некоторые провайдеры предлагают неограниченные вызовы API в своих предложениях бесплатного плана. [29] Другая бизнес-модель, которую используют многие провайдеры BaaS, — это PAYG (плати по факту). [30] который имеет гибкую стоимость, основанную на использовании разработчиками базы данных, хранилища, пропускной способности, вызовов функций, номеров пользователей и т. д.
См. также
[ редактировать ]- Телекоммуникационный портал
- как услуга
- Платформа разработки с низким кодом
- Быстрая разработка приложений
Ссылки
[ редактировать ]- ^ Монро, Мартин. «Евангелие MBaaS (Часть 1 из 2)» . ИнфоQ . Проверено 6 мая 2013 г.
- ^ Монро, Мартин. «Евангелие MBaaS (Часть 2)» . ИнфоQ . Проверено 15 мая 2013 г.
- ^ Jump up to: а б Лейн, Кин (3 июня 2012 г.). «Распространение стеков API мобильного бэкэнда как услуги (MBaaS)» . API-евангелист . Проверено 16 октября 2012 г.
- ^ Карни, Майкл. «AnyPresence сотрудничает с Heroku, чтобы расширить свое корпоративное предложение mBaaS» . ПандоДейли . Архивировано из оригинала 27 июня 2013 года . Проверено 24 июня 2013 г.
- ^ Уильямс, Алекс (11 октября 2012 г.). «Kii Cloud открывает двери для платформы мобильных разработчиков с 25 миллионами конечных пользователей» . ТехКранч . Проверено 16 октября 2012 г.
- ^ Тан, Аарон (30 сентября 2012 г.). «FatFractal поднимает ставки на рынке серверной части как услуги» . Techgoondu.com . Проверено 16 октября 2012 г.
- ^ Ровински, Дэн (9 ноября 2011 г.). «Разбор мобильного бэкэнда как услуги привлек 5,5 миллионов долларов США в рамках серии А» . ЧитатьЗапись . Проверено 23 октября 2012 г.
- ^ Мишра, Панкадж (7 января 2014 г.). «MobStac привлекает 2 миллиона долларов в рамках серии B, чтобы помочь брендам использовать мобильную коммерцию» . ТехКранч . Проверено 22 мая 2014 г.
- ^ Лейн, Кин. «Новые функции от поставщика BaaS AnyPresence» . API-евангелист . Проверено 28 мая 2013 г.
- ^ Jump up to: а б с Лоулер, Райан (26 марта 2012 г.). «Parse предлагает свой мобильный сервер как услугу по модели freemium» . ГигаОМ . Архивировано из оригинала 9 октября 2012 года . Проверено 16 октября 2012 г.
- ^ Jump up to: а б Уильямс, Алекс (11 июля 2012 г.). «Kinvey привлекает 5 миллионов долларов на разработку серверной части мобильных и веб-приложений как услуги» . ТехКранч . Проверено 16 октября 2012 г.
- ^ Фейсмир, Майкл (2 сентября 2012 г.). «Мобильность предприятия: насколько быстро может идти развитие?» . Блог Майкла Фейсмира . Форрестер.com . Проверено 16 октября 2012 г.
- ^ Ровински, Дэн (17 апреля 2012 г.). «Рост мобильных облачных сервисов: рост стартапов BaaS» . ЧитатьЗапись . Проверено 23 октября 2012 г.
- ^ Лейн, Кин. «Новые функции от поставщика BaaS AnyPresence» . API-евангелист . Проверено 28 мая 2013 г.
- ^ Jump up to: а б с д Зомко, Роман. «Краткое руководство по бэкэнду как услуге (BaaS)» . impressit.io . Проверено 23 ноября 2023 г.
- ^ «Облачный обмен сообщениями Firebase» . Огневая база . Проверено 24 ноября 2023 г.
- ^ «Уведомления — Хостинг AWS Amplify» . docs.aws.amazon.com . Проверено 24 ноября 2023 г.
- ^ Jump up to: а б «Облачные функции для Firebase» . Огневая база . Проверено 24 ноября 2023 г.
- ^ Jump up to: а б «Функции — Документы — Запись приложения» . Приложение напишите . Проверено 24 ноября 2023 г.
- ^ «Пограничные функции | Документация по Supabase» . Супабаза . Проверено 24 ноября 2023 г.
- ^ Айл, Виджит (15 июня 2022 г.). «Использование пограничных функций в Supabase: полное руководство» . Блог LogRocket . Проверено 24 ноября 2023 г.
- ^ Ровински, Дэн (17 апреля 2012 г.). «Рост мобильных облачных сервисов: рост стартапов BaaS» . ЧитатьЗапись . Проверено 23 октября 2012 г.
- ^ «Google Аналитика для Firebase» . Огневая база . Проверено 24 ноября 2023 г.
- ^ «Полнофункциональный редактор веб-приложений — расширяемый конструктор приложений — AWS Amplify Studio — AWS» . Amazon Веб-сервисы, Inc. Проверено 24 ноября 2023 г.
- ^ «Конструктор пользовательского интерфейса» . Бесконечный . Проверено 24 ноября 2023 г.
- ^ Jump up to: а б «Как выбрать подходящего поставщика серверной части в качестве услуги (BaaS) для вашего проекта» . Сообщество разработчиков . 13 сентября 2023 г. Проверено 23 ноября 2023 г.
- ^ «Что такое BaaS? | Серверная часть как услуга или бессерверная технология» . Облачная вспышка . Проверено 23 ноября 2023 г.
- ^ «Что такое мобильный бэкэнд как услуга (MBaaS)? (2022)» . Бесконечный . 20 января 2023 г. Проверено 23 ноября 2023 г.
- ^ «MongoDB Stitch — бэкенд как услуга» . МонгоБД . Проверено 21 июня 2017 г.
- ^ «Что такое мобильная серверная служба (MBAAS)?» . Блог Карины Softlabs . 12 мая 2021 г. стр. 1–2. Архивировано из оригинала 16 мая 2024 года . Проверено 12 мая 2021 г.