PaaS (Platform-as-a-Service)

menu icon

PaaS (Platform-as-a-Service)

PaaS, ou plataforma como um serviço, fornece uma plataforma em cloud completa, flexível e com boa relação custo-benefício para desenvolvimento, execução e gerenciamento de aplicativos.

O que é PaaS (Platform-as-a-Service)?

PaaS, ou plataforma como um serviço, é um modelo de computação em cloud que proporciona aos clientes uma plataforma completa em cloud, hardware, software e infraestrutura, para desenvolvimento, execução e gerenciamento de aplicativos sem o custo, a complexidade e a falta de flexibilidade que muitas vezes acompanha a implementação e a manutenção dessa plataforma on-premises.

O provedor PaaS hospeda de tudo em seu data center tal como servidores, redes, armazenamento, software de sistema operacional, bancos de dados e ferramentas de desenvolvimento. Geralmente os clientes podem pagar uma taxa fixa para fornecer uma quantia especificada de recursos para um número especificado de usuários ou escolher a precificação 'pré-paga' para pagar apenas pelos recursos usados. Qualquer uma das opções permite que os clientes de PaaS desenvolvam, testem, implementem, executem, atualizem e ajustem a escala dos aplicativos de maneira mais rápida e mais barata do que poderiam se tivessem que desenvolver e gerenciar sua própria plataforma on-premises.

Todo provedor líder de serviço de cloud, incluindo a Amazon Web Services (AWS), a Google Cloud, a IBM Cloud e o Microsoft Azure, tem sua própria oferta de PaaS. As soluções populares PaaS também estão disponíveis como projetos em software livre (por exemplo, Apache Stratos, Cloud Foundry) ou de fornecedores de software (por exemplo, Red Hat OpenShift e Salesforce Heroku).

Benefícios do PaaS

Os benefícios mais comumente citados do PaaS, em comparação com uma plataforma on-premises, incluem:

  • Prazo de lançamento no mercado mais rápido. Com o PaaS, não há necessidade de comprar e instalar o hardware e software que você usa para desenvolver e manter sua plataforma de desenvolvimento de aplicativos, com isso, as equipes de desenvolvimento não precisam esperar enquanto você faz isso. Basta acessar o PaaS do provedor de serviço de cloud para começar a provisionar recursos e desenvolver imediatamente.
  • Grande variedade de recursos financeiramente acessíveis.As plataformas PaaS geralmente oferecem acesso a uma variedade maior de opções na stack de aplicativos, incluindo sistemas operacionais,middleware, bancos de dados e ferramentas de desenvolvimento do que a maioria das organizações podem se manter de maneira prática ou financeiramente acessível.
  • Mais liberdade para experimentar, com menos risco. O PaaS também deixa você experimentar ou testar novos sistemas operacionais, linguagens e outras ferramentas sem ter que fazer investimentos substanciais neles ou na infraestrutura necessária para executá-los.
  • Escalabilidade fácil e rentável. Com uma plataforma on-premises, o ajuste de escala é sempre caro, muitas vezes desgastado e às vezes inadequado: Você precisa adquirir capacidade adicional de computação, armazenamento e rede antes dos picos de tráfego. A grande parte dessa capacidade fica ociosa durante períodos de baixo tráfego e nada pode ser aumentado a tempo de acomodar picos imprevistos. Com o PaaS, é possível adquirir capacidade adicional e começar a usá-la imediatamente, sempre que precisar.
  • Maior flexibilidade para as equipes de desenvolvimento. Os serviços PaaS fornecem um ambiente de desenvolvimento de software compartilhado que permite às equipes de desenvolvimento e operações acesso a todas as ferramentas de que necessitam, a partir de qualquer local com uma conexão à Internet.
  • Custos mais baixos em geral. Claramente, o PaaS reduz custos ao possibilitar que uma organização evite gastos com equipamentos de capital associados ao desenvolvimento e o ajuste de escala de uma plataforma de aplicativos. Mas a PaaS também pode reduzir ou eliminar os custos de licenciamento de software. E ao lidar com correções, atualizações e outras tarefas administrativas, a PaaS pode reduzir os custos gerais de gerenciamento de aplicativos.

Como o PaaS funciona

Em geral, as soluções PaaS têm três partes principais:

  • Infraestrutura em cloud, incluindo máquinas virtuais (VMs), software de sistema operacional, armazenamento, rede, firewalls,
  • software para desenvolvimento, implementação e gerenciamento de aplicativos;
  • uma interface de usuário gráfico, ou GUI, na qual as equipes de desenvolvimento ou DevOps podem fazer todo o seu trabalho ao longo de todo o ciclo de vida do aplicativo

Como a PaaS entrega todas as ferramentas de desenvolvimento padrão por meio da interface on-line GUI, os desenvolvedores podem efetuar login de qualquer lugar para colaborar em projetos, testar novos aplicativos ou lançar produtos concluídos. Os aplicativos são projetados e desenvolvidos diretamente no PaaS usando middleware. Com fluxos de trabalho simplificados, diversas equipes de desenvolvimento e operações podem trabalhar no mesmo projeto simultaneamente.

Os provedores de PaaS gerenciam a maior parte de seus serviços de computação em cloud, como servidores, tempo de execução e virtualização. Como cliente PaaS, sua empresa mantém gerenciamento de aplicativos e dados.

PaaS, IaaS e SaaS

Como o PaaS, a infraestrutura como um serviço (IaaS) e o software como um serviço (SaaS) são modelos de serviço de computação em cloud muito comuns. Na verdade, é muito comum uma organização usar todos os três, mesmo que ela não compre os três especificamente. Para esclarecer:

A IaaS é o acesso à Internet à infraestrutura de TI 'bruta', servidores físicos, máquinas virtuais, armazenamento, rede, firewalls, hospedada por um provedor em cloud.O IaaS elimina o custo e o trabalho de propriedade, gerenciamento e manutenção da infraestrutura on-premises. Com o IaaS, a organização fornece seu próprio aplicativo e plataforma de aplicativos.

Qualquer oferta de PaaS inclui necessariamente os recursos de IaaS necessários para hospedá-la, mesmo se esses recursos não forem separados discretamente ou chamados de IaaS.

O SaaS é um software de aplicativo que você usa pela cloud, como se ele fosse instalado em seu computador (em alguns casos, partes dele são instaladas em seu computador).O SaaS permite que sua organização use um aplicativo sem a despesa de configurar a infraestrutura para executá-lo e o esforço e pessoal para mantê-lo (aplicar correções de bugs e atualizações, resolver interrupções etc.). O Salesforce e o Slack são exemplos de ofertas populares de SaaS e a maioria dos aplicativos da web é considerada SaaS.

Cada oferta SaaS inclui os recursos IaaS necessários para hospedá-la e, no mínimo, os componentes PaaS necessários para executá-la. Alguns fornecedores de SaaS também fornecem um PaaS discreto que permite que terceiros personalizem a oferta do SaaS).

Outra forma de comparar IaaS, PaaS e SaaS se baseia na quantia de gerenciamento deixada para o cliente em comparação com a quantia de gerenciamento deixada para o provedor de serviço de cloud:

IaaS, PaaS, Serverless e SaaS transferem o aumento da responsabilidade de gerenciamento para o provedor de cloud

 

Veja mais sobre IaaS, PaaS e SaaS.

Casos de uso para PaaS

Ao fornecer uma plataforma integrada e pronta para uso, e ao permitir que as organizações transfiram o gerenciamento da infraestrutura para o provedor de cloud e se concentrem no desenvolvimento, implementação e gerenciamento de aplicativos, a PaaS pode facilitar ou promover uma série de iniciativas de TI, incluindo:

  • Desenvolvimento e gerenciamento de API: Por causa de suas estruturas integradas, o PaaS torna muito mais simples para as equipes desenvolver, executar, gerenciar e proteger APIs (interfaces de programação de aplicativos) para compartilhar dados e funcionalidade entre aplicativos.
  • Internet das Coisas (IoT): Pronto para o uso, o PaaS pode oferecer suporte a uma variedade de linguagens de programação (Java, Python, Swift etc.), ferramentas e ambientes de aplicativos usados para o desenvolvimento de aplicativos IoT e processamento em tempo real de dados gerados por dispositivos IoT.
  • Desenvolvimento ágil e DevOps: o PaaS pode fornecer ambientes totalmente configurados para automatizar o ciclo de vida do aplicativo de software, incluindo integração, entrega, segurança, teste e implementação.
  • Migração para a cloud e desenvolvimento nativo em cloud:Com suas ferramentas prontas para uso e recursos de integração, o PaaS pode simplificar a Migração de aplicativos existentes para a cloud, principalmente por meio de reformulação (mover um aplicativo para a cloud com modificações que aproveitem melhor a escalabilidade da cloud, balanceamento de carga e outros recursos) ou refatoração (rearquitetura de parte ou de todo um aplicativo usando microsserviços, contêineres e outras tecnologias nativas em cloud).
  • Estratégia de cloud híbrida: a cloud híbrida integra serviços de cloud pública, serviços de cloud privada e infraestrutura local e fornece orquestração, gerenciamento e portabilidade de aplicativos em todos os três. O resultado é um ambiente de computação distribuído unificado e flexível, em que uma organização pode executar e ajustar a escala de suas cargas de trabalho tradicionais (legadas) ou nativas em cloud no modelo de computação mais apropriado. A solução PaaS certa permite que os desenvolvedores criem uma vez, depois implementem e gerenciem em qualquer lugar em um ambiente de cloud híbrida.

Tipos de PaaS desenvolvidos com propósito específico

Muitos fornecedores de cloud, software e hardware oferecem soluções PaaS para desenvolver tipos específicos de aplicativos ou aplicativos que interagem com tipos específicos de hardware, software ou dispositivos.

  • O AIPaaS (PaaS for Artificial Intelligence) permite que as equipes de desenvolvimento criem aplicativos de inteligência artificial (AI) sem a despesa, muitas vezes proibitiva de compra, gerenciamento e manutenção da potência de computação significativo, recursos de armazenamento e capacidade de rede que esses aplicativos exigem. O AiPaaS normalmente inclui aprendizado de máquina pré-treinada e desenvolvedores de modelos de deep learning podem usar no estado em que se encontram ou customizar, e APIs prontas para integrar recursos de IA específicos, como reconhecimento de voz ou conversão de voz em texto, em aplicativos existentes ou novos.
  • O iPaaS (plataforma de integração como um serviço) é uma solução hospedada em cloud para integração de aplicativos. O iPaaS fornece às organizações uma maneira padronizada de conectar dados, processos e serviços em cloud pública, cloud privada e ambientes on-premises sem ter que comprar, instalar e gerenciar seu próprio hardware de integração de back-end, middleware e software. (Observe que as soluções Paas geralmente incluem algum grau de capacidade de integração, gerenciamento de API, por exemplo, mas o iPaaS é mais abrangente.)
  • cPaaS (communications platform as a service) é um PaaS que permite aos desenvolvedores incluir facilmente recursos de voz (chamadas de entrada e saída), vídeo (incluindo teleconferência) e mensagens (texto e mídia social) aos aplicativos, sem investir em hardware e software de comunicação especializados.
  • mPaaS (mobile platform as a service) é um PaaS que simplifica o desenvolvimento de aplicativos para dispositivos móveis. O mPaaS normalmente fornece métodos com baixa necessidade de codificação (até mesmo o simples arrastar e soltar) para acessar recursos específicos do dispositivo, incluindo a câmera do telefone, microfone, sensor de movimento e recursos de geolocalização (ou GPS).

PaaS e IBM Cloud

A IBM fornece soluções PaaS completas e escaláveis para desenvolver aplicativos nativos em cloud desde o início modernizar aplicativos existentes para se beneficiar da flexibilidade e escalabilidade da cloud.

IBM Red Hat OpenShift on IBM Cloud é um serviço OpenShift totalmente gerenciado que usa a escala corporativa e a segurança da IBM Cloud para automatizar atualizações, ajustar a escala, provisionar e para tratar surtos inesperados no tráfego. Suas equipes podem iniciar o desenvolvimento e a modernização do aplicativo com uma variedade de ferramentas e recursos e implementar clusters totalmente gerenciados altamente disponíveis com um único clique.IBM Red Hat OpenShift on IBM Cloud foi nomeado líder na The Forrester Wave: Multicloud Container Development Platforms, 3o. trimestre de 2020 (PDF, 415 KB).

O IBM Cloud Pak for Applications ajuda a modernizar os aplicativos existentes, incorporar segurança adicional e desenvolver novos aplicativos que desencadeiam iniciativas digitais. Oferece soluções de desenvolvimento nativo de cloud que podem agregar valor rapidamente, com licenciamento flexível que pode ser customizado às suas necessidades específicas.

Para começar a usar o PaaS na cloud IBM Cloud, inscreva-se em um IBMid e crie sua conta na IBM Cloud.