Платформа как услуга ( PaaS ) или платформа приложений как услуга ( aPaaS ) или сервис на основе платформы — это модель сервиса облачных вычислений , в которой пользователи предоставляют, создают экземпляры, запускают и управляют модульным пакетом вычислительной платформы и приложений, без сложностей создания и обслуживания инфраструктуры, связанной с разработкой и запуском приложений, и позволяют разработчикам создавать, разрабатывать и упаковывать такие программные пакеты. [1] [2]
PaaS может быть предоставлен тремя способами:
Первой [5] публичной платформой как услугой была Zimki, запущенная Fotango, лондонской компанией, принадлежащей Canon Europe . Она была разработана в 2005 году, имела бета-запуск в марте 2006 года и публичный запуск на EuroOSCON в 2006 году. [6]
На момент закрытия Zimki имел несколько тысяч учетных записей разработчиков. Он продемонстрировал техническую жизнеспособность платформы как услуги, но также предоставил первый пример опасностей зависимости от одного поставщика. [7] Это было подчеркнуто, когда генеральный директор ( Саймон Уордли , известный по картам Уордли ) объявил на OSCON 2007, что Zimki больше не будет иметь открытый исходный код, и обсудил будущее того, что тогда называлось фреймворк-как-услуга (позже названный платформой-как-услугой), охватывая важность рынка поставщиков, основанного на эталонной модели с открытым исходным кодом. [8]
Первоначальной целью PaaS было упрощение написания кода, при этом инфраструктура и операции обрабатывались поставщиком PaaS. Изначально все PaaS находились в публичном облаке. Поскольку многие компании не хотели иметь все в публичном облаке, были созданы частные и гибридные варианты PaaS (управляемые внутренними ИТ-отделами). [9]
PaaS предоставляет разработчикам и компаниям среду для создания, размещения и развертывания приложений, избавляя разработчиков от сложностей инфраструктуры (настройки, конфигурирования и управления такими элементами, как серверы и базы данных). PaaS может повысить скорость разработки приложения и позволить пользователю сосредоточиться на самом приложении. С PaaS клиент управляет приложениями и данными, в то время как поставщик (в публичном PaaS) или ИТ-отдел (в частном PaaS) управляет средой выполнения , промежуточным программным обеспечением , операционной системой , виртуализацией , серверами , хранилищем и сетями . [3] [10] Инструменты разработки, предоставляемые поставщиком, настраиваются в соответствии с потребностями пользователя. [11] Пользователь может выбрать обслуживание программного обеспечения или поручить обслуживание поставщику. [3]
Предложения PaaS могут также включать возможности для проектирования приложений, разработки приложений, тестирования и развертывания, а также такие услуги, как совместная работа в команде , интеграция веб-сервисов и маршаллинг , интеграция баз данных, безопасность, масштабируемость, хранение, сохранение, управление состоянием, управление версиями приложений, инструментарий приложений и содействие сообществу разработчиков. Помимо аспектов инженерии услуг, предложения PaaS включают механизмы для управления услугами, такие как мониторинг, управление рабочим процессом, обнаружение и резервирование. [12] [13]
Преимущества PaaS в первую очередь заключаются в том, что он позволяет выполнять программирование более высокого уровня с существенно сниженной сложностью; общая разработка приложения может быть более эффективной, поскольку оно имеет встроенные/самонаращиваемые инфраструктурные ресурсы; и, таким образом, обслуживание и улучшение приложения упрощается.
Недостатки различных провайдеров PaaS, по словам их пользователей, включают в себя повышенные цены при больших масштабах, [14] отсутствие эксплуатационных функций, [15] снижение контроля [15] и трудности систем маршрутизации трафика. [16]
Существует несколько типов PaaS, включая публичные, частные и гибридные. [9] PaaS изначально предназначался для приложений в публичных облачных сервисах, а затем был расширен и включил частные и гибридные варианты. [9]
Публичный PaaS происходит от программного обеспечения как услуги (SaaS) [17] и располагается в облачных вычислениях между SaaS и инфраструктурой как услугой (IaaS). [1] SaaS — это программное обеспечение, размещенное в облаке, так что оно не находится и не работает на компьютерах клиентов. IaaS предоставляет виртуальное оборудование от поставщика с регулируемой масштабируемостью. [1] В IaaS сервер управляется пользователем, тогда как в PaaS — поставщиком. [18]
Частный PaaS обычно можно загрузить и установить либо в локальном центре обработки данных компании , либо в публичном облаке. После установки программного обеспечения на одну или несколько машин частный PaaS организует компоненты приложения и базы данных в единую платформу хостинга. [19]
Гибридный PaaS обычно представляет собой развертывание, состоящее из смеси публичных и частных развертываний.
Коммуникационная платформа как услуга (CPaaS) — это облачная платформа, которая позволяет разработчикам добавлять функции связи в реальном времени (голос, видео и обмен сообщениями) в свои собственные приложения без создания внутренней инфраструктуры и интерфейсов. [20] Кроме того, CPaaS и спецификации оборудования и программного обеспечения специально разработаны для поддержки (теле)коммуникационных приложений. Эти приложения и их использование гораздо более чувствительны к джиттеру, задержкам и потерям пакетов. Размещенные АТС , сотовые сети, (приложения, работающие в режиме, близком к реальному времени) обычно развертываются на платформах CPaaS.
Инициированная в 2012 году мобильная PaaS (mPaaS) предоставляет возможности разработки для дизайнеров и разработчиков мобильных приложений. [21] Yankee Group определила mPaaS как одну из своих тем на 2014 год. [22] [23]
Open PaaS не включает хостинг, но предоставляет программное обеспечение с открытым исходным кодом, позволяющее поставщику PaaS запускать приложения в среде с открытым исходным кодом, например Google App Engine . Некоторые открытые платформы позволяют разработчику использовать любой язык программирования, базу данных, операционную систему или сервер для развертывания своих приложений. [24]
Существуют различные типы поставщиков PaaS. Все они предлагают хостинг приложений и среду развертывания, а также различные интегрированные услуги. Услуги предлагают различные уровни масштабируемости и обслуживания. [25] Разработчики могут написать приложение и загрузить его в PaaS, который поддерживает их язык программного обеспечения по выбору, и приложение будет работать на этом PaaS. [26]
Правительство Великобритании призывает департаменты использовать публичные облачные решения в качестве первого варианта. PaaS используется в правительстве Великобритании, но технологическое сообщество в правительстве отмечает, что поставщики PaaS могут ограничивать программное обеспечение, языки и интерфейсы, которые они готовы поддерживать. Правительство управляло собственной службой GOV.UK PaaS с 2015 по 2023 год, но теперь она выведена из эксплуатации. [27]
{{cite book}}
: CS1 maint: несколько имен: список авторов ( ссылка )