Como a virtualização pode capacitar aplicativos SaaS

Autor: Roger Morrison
Data De Criação: 17 Setembro 2021
Data De Atualização: 10 Poderia 2024
Anonim
Como a virtualização pode capacitar aplicativos SaaS - Tecnologia
Como a virtualização pode capacitar aplicativos SaaS - Tecnologia

Contente



Fonte: Tashatuvango / Dreamstime.com

Leve embora:

A virtualização e o SaaS podem ser uma combinação poderosa para as empresas.

A virtualização abrange várias tecnologias de computação e pode ser alcançada no nível do hardware e no software. Em uma empresa, a virtualização pode aprimorar a capacidade dos serviços de software, especialmente aplicativos SaaS. É também a maneira mais eficaz para as empresas reduzirem seus custos de TI. Mas junte virtualização e SaaS e você pode ter uma combinação vencedora.

O que é SaaS?

Software como serviço (SaaS) é um modelo de licenciamento de software no qual o software é licenciado com base em assinatura e é hospedado centralmente por um fornecedor ou provedor de serviços. Esses aplicativos de software distribuído são disponibilizados aos clientes pela Internet.

O SaaS está se tornando popular entre as tecnologias que oferecem suporte à arquitetura orientada a serviços (SOA) ou serviços Web. O SaaS vem com uma série de vantagens. Os mais comuns são:
  • Administração fácil
  • Atualizações fáceis e gerenciamento de patches
  • Compatibilidade (todos os usuários terão a mesma versão do software)
  • Acessibilidade global
O SaaS também é considerado parte da nomenclatura da computação em nuvem, juntamente com:
  • Infraestrutura como serviço (IaaS)
  • Desktop como serviço (DaaS)
  • Back-end como um serviço (BaaS)
  • Plataforma como serviço (PaaS)
  • Gerenciamento de tecnologia da informação como serviço (ITMaaS)

Virtualização e entrega de software

O conceito de virtualização foi corretamente adotado e aceito na comunidade de desenvolvimento de software. Ele tem a capacidade de fornecer mecanismos de teste e desenvolvimento mais rápidos, criando ambientes de desenvolvimento e teste rapidamente.

O VMware e o VBox são a tecnologia mais usada e permitem que vários usuários executem em diferentes sistemas operacionais, versões e instâncias. A maioria das empresas de desenvolvimento de software adota a técnica de virtualização adotando primeiro o mecanismo de virtualização de software e depois gradualmente migrando para a virtualização de hardware.

Virtualização e SaaS

Apesar de ter tantas vantagens, o SaaS ainda não recebeu o devido crédito. Existem muitos fatores responsáveis ​​por isso. Esses incluem:
  • Grande custo inicial: a receita investida na instalação é recuperada ao longo de um período de anos.

  • Pode violar os princípios do software livre: o ativista da liberdade de software Richard Stallman se refere ao SaaS como "serviço como substituto do software (SaaSS)" e considera uma violação dos princípios do software livre.

    "Com o SaaS, os usuários não têm uma cópia do arquivo executável: é no servidor, onde os usuários não podem vê-lo ou tocá-lo. Assim, é impossível para eles verificar o que realmente faz e impossível alterá-lo. O SaaS inerentemente dá ao operador do servidor o poder de alterar o software em uso ou os dados dos usuários em operação ", escreveu Stallman no site da GNU.
Um bom exemplo de SaaS sobre virtualização é o Amazon Web Services (AWS). A AWS oferece uma variedade de softwares e plataformas. O software é instalado em hosts virtuais e pode ser ampliado ou diminuído conforme necessário.

Se focarmos além do custo de infraestrutura e de inicialização, uma vez implantada, uma plataforma de aplicativo SaaS deve se preocupar apenas com a reprodutibilidade. Cada instância do aplicativo baseado em SaaS deve ser idêntica uma à outra. Deve haver diferenças mínimas para manter o comportamento consistente de cada instância de aplicativo para cada cliente e para a equipe de suporte. Isso é feito para que eles tenham uma base uniforme para solucionar qualquer problema, se necessário. O engenheiro de suporte não gostaria de descobrir um problema causado por um módulo de biblioteca ausente para uma única instância do cliente. Da mesma forma, nenhum cliente gostaria de saber que poderia haver um problema em cada aplicativo solicitado, porque a empresa baseada em SaaS não pode reproduzir o problema usando as mesmas etapas para cada pedido. Todo o processo deve ser automatizado para obter consistência e benefícios de custo.

Aumento da complexidade

Torna-se importante entender a natureza complexa da implantação dos aplicativos de hoje - seja o modelo SaaS ou o modelo tradicional. Mesmo o aplicativo Web mais simples não é mais responsável pelo gerenciamento da camada de armazenamento de dados subjacente. A prática padrão é ter um banco de dados, por exemplo, MySQL, Oracle, DB2 ou SQL Server. Combiná-las com pilhas da Web típicas, como Java, Ninja, Grails, Rails, etc., leva a uma arquitetura de várias camadas que exige implantação escalável. Por exemplo, ao configurar um ambiente Rails, usamos o MySQL.

A natureza ágil dos aplicativos, que permite atualizações fáceis do software via plug-ins, patches, macros e mashups, pode ser facilmente integrada ao modelo SaaS. Uma extensão ou um patch é desenvolvido para um problema menor, na maioria das vezes uma correção de bug, que precisa ser entregue como um patch no software existente. Geralmente, um cliente não gostaria de saber que ocorreu um problema devido a uma restrição de recurso ou a outras circunstâncias, ou que foi criado por outro cliente.

De acordo com a Wikipedia, a separação de preocupações é a premissa de dividir um aplicativo em recursos distintos, o que minimiza a sobreposição de funcionalidades. Com a virtualização implementada, esse conceito pode ser aplicado à infraestrutura. A separação pode ser aplicada até a base por aplicativo, por cliente e / ou por cluster. Enquanto ainda usa o hardware em sua capacidade máxima, ele oferece a capacidade de escalar horizontal e verticalmente. Isso é benéfico para aplicativos de inquilino único que desejam entrar no mercado de SaaS. A multilocação instantânea no hardware subjacente com alteração de código quase zero pode ser alcançada com facilidade.

Existem dois modelos de implantação implantados na plataforma Contegixs SaaS. O fator de diferenciação depende de como o aplicativo é desenvolvido:
  • Para oferecer suporte a um único cliente por implantação, ou
  • Para oferecer suporte a vários clientes em uma única implantação
O outro modelo de implantação comum é fornecer um maior grau de separação. Os aplicativos de infraestrutura subjacentes são separados em máquinas virtuais, cada uma dimensionada nos respectivos níveis necessários. Além do modelo de inquilino único, esse modelo permite dimensionar não apenas os componentes individuais em termos de recursos da máquina virtual, mas também o número de instâncias. Esse modelo serve muito bem para grandes instâncias ou vários aplicativos de clientes.

Independentemente do modelo de implantação, é muito importante separar a instalação do sistema operacional e do aplicativo dos dados do aplicativo. Isso leva a discussões sobre como as atualizações são processadas e manipuladas. A instalação do sistema operacional e do aplicativo deve levar em consideração a quantidade de dados voláteis, que devem poder ser substituídos a qualquer momento por uma cópia atualizada ou nova versão.