Дом Облачные вычисления Как виртуализация может расширить возможности приложений saas

Как виртуализация может расширить возможности приложений saas

Оглавление:

Anonim

Виртуализация включает в себя различные вычислительные технологии и может быть достигнута как на аппаратном, так и на программном уровне. На предприятии виртуализация может расширить возможности программных служб, особенно приложений SaaS. Это также самый эффективный способ снижения затрат на ИТ для предприятий. Но соедините виртуализацию и SaaS, и у вас может получиться выигрышная комбинация.

Что такое SaaS?

Программное обеспечение как услуга (SaaS) - это модель лицензирования программного обеспечения, при которой программное обеспечение лицензируется на основе подписки и размещается централизованно поставщиком или поставщиком услуг. Эти распределенные программные приложения доступны для клиентов через Интернет.


SaaS становится популярным среди технологий, которые поддерживают сервис-ориентированную архитектуру (SOA) или веб-сервисы. SaaS имеет множество преимуществ. Наиболее распространенные из них:

  • Простое администрирование
  • Простые обновления и управление патчами
  • Совместимость (все пользователи будут иметь одинаковую версию программного обеспечения)
  • Глобальная доступность
SaaS также считается частью номенклатуры облачных вычислений наряду с:

  • Управление информационными технологиями как услуга (ITMaaS)

Виртуализация и доставка программного обеспечения

Концепция виртуализации была правильно принята и принята в сообществе разработчиков программного обеспечения. Он способен быстрее создавать механизмы разработки и тестирования, быстро создавая среды разработки и тестирования.


VMware и VBox являются наиболее широко используемой технологией, и они позволяют нескольким пользователям работать в разных операционных системах, версиях и экземплярах. Большинство предприятий по разработке программного обеспечения применяют технологию виртуализации, сначала применяя механизм виртуализации программного обеспечения, а затем постепенно переходя к аппаратной виртуализации.

Виртуализация и SaaS

Несмотря на то, что SaaS имеет так много преимуществ, он еще не получил должного кредита. Есть много факторов, которые ответственны за это. Это включает:

  • Огромные начальные затраты: доход, вложенный в установку, восстанавливается в течение нескольких лет.
  • Это может нарушить принципы свободного программного обеспечения: активист свободы программного обеспечения Ричард Столлман называет SaaS «услугой как заменителем программного обеспечения (SaaSS)» и считает это нарушением принципов свободного программного обеспечения.


    «С SaaS пользователи не имеют копии исполняемого файла: он находится на сервере, где пользователи не могут видеть или трогать его. Таким образом, они не могут выяснить, что он действительно делает, и невозможно изменить SaaS по своей сути дает оператору сервера возможность изменять используемое программное обеспечение или пользовательские данные, на которых он работает », - написал Столлман на веб-сайте GNU.

Хорошим примером SaaS над виртуализацией является Amazon Web Services (AWS). AWS предлагает множество программного обеспечения и платформ. Программное обеспечение установлено на виртуальных хостах и ​​может быть увеличено или уменьшено по мере необходимости.


Если мы сосредоточимся не только на инфраструктуре и начальных затратах, то после развертывания прикладная платформа SaaS должна заботиться только о воспроизводимости. Каждый экземпляр приложения на основе SaaS должен быть идентичен друг другу. Должны быть минимальные различия, чтобы поддерживать согласованное поведение каждого экземпляра приложения для каждого клиента и для группы поддержки. Это делается для того, чтобы они имели единую базу для устранения любых проблем, если это необходимо. Инженер службы поддержки не хотел бы обнаруживать проблему, вызванную отсутствием библиотечного модуля для одного экземпляра клиента. Аналогичным образом, клиент также не хотел бы знать, что в каждом заказанном приложении может быть проблема, поскольку компания, основанная на SaaS, не может воспроизвести проблему, используя одни и те же шаги для каждого заказа. Весь процесс должен быть автоматизирован для согласованности и экономии затрат.

Увеличение сложности

Становится важным понять сложную природу развертывания для современных приложений - будь то модель SaaS или традиционная модель. Даже самое простое веб-приложение больше не отвечает за управление базовым уровнем хранения данных. Стандартная практика - иметь базу данных, например, MySQL, Oracle, DB2 или SQL Server. Объединение их с типичными веб-стеками, такими как Java, Ninja, Grails, Rails и т. Д., Приводит к многоуровневой архитектуре, требующей масштабируемого развертывания. Например, при настройке среды Rails мы использовали MySQL.


Гибкая природа приложений, которая позволяет легко обновлять программное обеспечение с помощью плагинов, исправлений, макросов и гибридных приложений, может быть легко интегрирована в модель SaaS. Расширение или исправление разрабатываются для более мелкой проблемы, в большинстве случаев исправления ошибок, которое необходимо поставить в качестве исправления в существующем программном обеспечении. Обычно клиенту не хотелось бы слышать, что проблема возникла из-за ограниченности ресурсов или других обстоятельств или что она была создана другим клиентом.


Согласно Википедии, разделение интересов является предпосылкой разделения приложения на отдельные функции, что сводит к минимуму дублирование функций. При наличии виртуализации эта концепция может быть применена к инфраструктуре. Разделение может применяться вплоть до каждого приложения, каждого клиента и / или каждого кластера. Все еще используя аппаратное обеспечение до его максимальной емкости, оно обеспечивает возможность масштабирования по горизонтали и вертикали. Это выгодно для приложений с одним арендатором, которые хотят выйти на рынок SaaS. Мгновенная многопользовательская аренда на базовом оборудовании с почти нулевым изменением кода может быть легко достигнута.


Существует две модели развертывания, развернутые на платформе SaaS компании Contegix. Различающий фактор зависит от того, как разрабатывается приложение:

  • Для поддержки одного клиента на развертывание, или
  • Для поддержки нескольких клиентов в одном развертывании
Другая распространенная модель развертывания - обеспечить более высокую степень разделения. Базовые инфраструктурные приложения разделены на виртуальные машины, каждая из которых масштабируется на соответствующих требуемых уровнях. Помимо модели с одним арендатором, эта модель позволяет масштабировать не только отдельные компоненты с точки зрения ресурсов виртуальной машины, но и количество экземпляров. Эта модель отлично подходит для больших экземпляров или приложений для нескольких клиентов.


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

Как виртуализация может расширить возможности приложений saas