Prévia do material em texto
PaaS (Plataforma como serviço) Apresentação Trabalhos em equipes estimulam a produtividade. Em desenvolvimento de software, essa também é uma realidade. Pensando nisso, são propostas alternativas para manter uma estrutura compartilhada que supere estruturas de software como serviço. Nesse sentido, a plataforma como serviço (PaaS) desempenha um importante papel para os desenvolvedores, pois permite que suas aplicações sejam executadas e implantadas (deploy) de forma on-line, em geral com mega infraestrutura e de maneira transparente e flexível. Nesta Unidade de Aprendizagem, você vai aprender sobre os conceitos que definem uma PaaS, como descrever seu funcionamento, oferta, utilização e analisar sua usabilidade, suas vantagens, desvantagens, casos de uso e a relação com a infraestrutura como serviço (IaaS). Bons estudos. Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados: Definir PaaS.• Descrever o funcionamento, a oferta, a utilização e os modos de cobrança.• Analisar a usabilidade, as vantagens, as desvantagens, os casos de uso e a relação com IaaS.• Desafio No ambiente empresarial moderno, há uma ênfase crescente em aplicativos e serviços da Web amigáveis ao cliente. Atualmente, muitas empresas desejam oferecer um nível maior de atendimento e suporte ao cliente, usando aplicativos e soluções desenvolvidas na Web. No entanto, em sua maioria, os custos de desenvolvimento e implantação desses aplicativos são elevados, tornando-os pouco atrativos. Nesse contexto, o PaaS torna-se atrativo e existem duas maneiras de se beneficiar de toda sua estrutura: utilizando PaaS público ou do tipo privado. O PaaS público é entregue por um provedor de serviços para a criação de aplicativos, enquanto o PaaS corporativo é fornecido pela TI central de uma organização para desenvolvedores e, possivelmente, parceiros e clientes comerciais. Imagine que você foi contratado por uma empresa de tecnologia para desenvolver um sistema que implemente um algoritmo de agrupamento de dados para automatizar o processo de rotulagem de categorias musicais de uma empresa de estúdio musical. A partir do exposto, qual nuvem em PaaS você usaria para acelerar sua produção, levando em conta uma plataforma pública, e qual linguagem de programação utilizaria? Infográfico Os provedores de PaaS diversificam-se nas ferramentas e serviços disponibilizados, adequando-se normalmente ao investimento feito pelo contratante. Alguns fornecedores de PaaS oferecem maior flexibilidade de configuração em estrutura, permitindo que sejam disponibilizadas configurações de hardware, banda de Internet, sistemas operacionais, indo além das ferramentas disponibilizadas para desenvolvimento e implementação. No Infográfico, você verá em que nível está o PaaS em relação a software como serviço (SaaS) e IaaS, além de conferir uma apresentação sumária sobre serviços disponibilizados de PaaS. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://statics-marketplace.plataforma.grupoa.education/sagah/3f985d2d-613f-400e-b4ff-62158a179de6/c9659a7a-508b-421b-8633-463f77386508.jpg Conteúdo do Livro A computação em nuvens é um tópico que tem se tornado muito importante para pequenas e grandes empresas. Ao considerarem a possibilidade de mudar seus negócios para a nuvem, seja para implantação de aplicativos ou para infraestrutura, as empressas podem ganhar muitas vantagens, como economia em implantação e infraestrutura. Um dos três modelos de serviço em nuvem é o PaaS, cujo fornecedor terceirizado disponibiliza ferramentas de hardware e software, sendo que essas feramentas, em geral, são necessárias para o desenvolvimento de aplicativos por meio da Internet. Dessa forma, o PaaS permite que os desenvolvedores criem e implementem seus aplicativos de maneira on-line, não precisando se preocupar com a instalação de hardwares e softwares internos. No capítulo PaaS (plataforma como serviço), da obra PaaS (plataforma como serviço), base teórica desta Unidade de Aprendizagem, você vai aprender o conceito de PaaS e saber como especificar o funcionamento de uma plataforma, bem como as abstrações e os modelos de cobrança, além de identificar as diferenças para os modelos de serviço de IaaS. Boa leitura. INFRAESTRUTURA DE TI Hygo Sousa de Oliveira PaaS (plataforma como serviço) Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: � Definir PaaS. � Especificar o funcionamento, as abstrações e os modos de cobrança. � Analisar a usabilidade, as vantagens, as desvantagens, os casos de uso e a relação com a infraestrutura como serviço (IaaS). Introdução Cada vez mais comumente, as empresas de diferentes ramos investem em infraestrutura de redes, o que se justifica, por exemplo, pelos processos de negócio entre as organizações, em que se apropriam continuamente de aplicações que processam e fornecem informações fundamentais para seu pleno funcionamento. Nesse contexto, o maior responsável pela fluidez do fluxo de informações entre empresas é a tecnologia da informação (TI), que permite que organizações trabalhem em conjunto por um objetivo a fim de entregarem aos seus clientes um valor agregado muito maior em comparação ao que seria possível com abordagens isoladas sem a utilização da TI. Assim, é natural expor formas de aplicações na chamada computação em nuvem (cloud computing), que nos fornece três modelos de serviço, entre os quais enfatizaremos o PaaS (modelo de plataforma como serviço). Neste capítulo, você aprenderá sobre o conceito de PaaS, entenderá como especificar o funcionamento de uma plataforma, bem como as abstrações e os modelos de cobrança, além de identificar as diferenças para o modelo de serviço de infraestrutura como serviço (IaaS). 1 Principais conceitos de PaaS De modo geral, o serviço em nuvem fornece recursos computacionais, desenvol- vimento de plataformas e aplicações em forma de serviço para usuários finais. Segundo Chandrasekaran (2014), o modelo computacional em nuvem possibilita que os usuários acessem e compartilhem recursos de rede, armazenamento, banco de dados e aplicações sob demanda, sem que haja a necessidade de pagar por eles de modo permanente, caso não exista esse desejo. O serviço de plataforma como serviço (do inglês, platform as a service — PaaS) foi definido pelo Instituto Nacional de Padrões e Tecnologias (National Institute of Standards and Technology — NIST) como um modelo de serviço básico, assim como as tecnologias de IaaS (infraestrutura como serviço) e SaaS (software como serviço). Segundo Mahmood (2013), o PaaS provém plataformas para desenvolver aplicações sem que seja preciso instalar qualquer ferramenta de desenvolvi- mento e bibliotecas. Assim, conseguem dispor de desenvolvedores relacionados a plataformas, incluindo ambientação, compreendendo o ciclo de desenvolvi- mento, teste e implementação, e até mesmo hospedagem de aplicações web como um serviço entregue por uma base em nuvem (ANTONOPOULOS; GILLAM, 2010). A Figura 1 apresenta as características que compõem a PaaS, em que se pode notar três entidades, de cima para baixo, IaaS, PaaS e a interface de acesso ao PaaS, além de outros elementos, como escalabili- dade, gerenciamento de recursos, gerenciamento de aplicação e qualidade de serviço (QoS). A plataforma na nuvem oferece um modelo de computação, armazenamento e comunicação para as aplicações acessado pelos clientes via navegador, por exemplo, AppEngine do Google, AZURE da Microsoft, Force. com, Red Hat OpenShift, Heroku e Engine Yard. PaaS (plataforma como serviço)2 Figura 1. Modelo de referência da plataforma como serviço (PaaS). Fonte: Adaptada de Buyya, Vecchiola e Selvi (2013). Interface web Núcleo de Paas API de programação/bibliotecas Gerenciamento de usuário Gerenciamento de aplicação Tempo de execução Escalabilidade Gerenciamento de recursos Serviços web, portais,API de REST QoS/Gerenciamento sobre nível de serviço e taxas Provedor de PaasInterface web Características do PaaS Conforme Chandrasekaran (2014), como a forma de desenvolvimento em PaaS se diferencia significativamente do método tradicional, existem algumas características que tornam único o uso do PaaS, como os listados a seguir. Tudo em um O modelo PaaS fornece todas as ferramentas necessárias para desenvolvimento, teste, implementação, hospedagem e contínua aplicação no mesmo ambiente integrado de desenvolvimento (IDE), que pode variar conforme a linguagem de programação selecionada para a operação. 3PaaS (plataforma como serviço) Acesso web para desenvolvimento de plataformas O acesso web pode ser realizado via navegador, o que se torna benéfico pela utilização da interface web, a qual contribui na tarefa dos desenvolvedores de criar, modificar, testar e implementar diferentes aplicações sobre a mesma plataforma. Acesso off-line Quando não há acesso à internet para sincronização do projeto, os desenvolve- dores devem ter permissão para trabalhar off-line. Para habilitá-lo, alguns dos provedores de PaaS permitem que o desenvolvedor sincronize seu IDE local com os serviços de PaaS, como na utilização de SDK (kit de desenvolvimento de software) ou outras ferramentas. Escalabilidade Diz respeito à flexibilidade ou disponibilidade de recursos, capaz de trazer um recurso computacional mais amplo conforme a demanda. Serviços de PaaS fornecem escalabilidade interna para uma aplicação desenvolvida usando qualquer PaaS específico, o que garante que a aplicação consiga lidar com cargas variadas com eficiência. Colaboração Em sua maioria, os serviços PaaS fornecem suporte para o desenvolvimento colaborativo. Para permitir a colaboração entre desenvolvedores, a maioria dos provedores de PaaS oferece ferramentas para o planejamento e a comu- nicação do projeto. Ferramentas clientes Com o objetivo de acelerar o desenvolvimento, os provedores de PaaS fornecem várias ferramentas de cliente, como as de CLI, CLI da web, UI da web, API REST e IDE, cujo critério de escolha é de responsabilidade do desenvolvedor. Ademais, essas ferramentas clientes conseguem lidar com o gerenciamento de cobrança e assinatura. PaaS (plataforma como serviço)4 Quando mencionamos sobre participação off-line na produção de uma aplicação, é importante ressaltar que, embora o PaaS permita o controle de versionamento, essa tarefa está atribuída ao tipo de módulo de SaaS, como o exemplo do sistema de colaboração de desenvolvimento Git, com a finalidade de controlar o versionamento de código. A ideia do PaaS consiste em oferecer a implementação do software/ferramenta como um todo. 2 Funcionamento, abstrações e modos de cobrança Um dos principais diferenciais do desenvolvimento de aplicações em PaaS para o modo clássico em stand-alone, define-se pelo desenvolvimento a ser realizado de modo on-line em data centers, sem a necessidade de entregar o desenvolvimento em arquivo executável, além de programas com base em licença de uso. Como visto na Figura 2, os desenvolvedores podem consumir os serviços diretamente pela internet. Perceba que podemos explorar o PaaS de duas maneiras, como provedor (do inglês, provider) e consumidor (do inglês, consumer). O provedor tem a responsabilidade de disponibilizar os recursos, tanto de hardware quanto de ferramentas/bibliotecas para manipular uma linguagem de programação para o desenvolvimento. Uma das formas de compartilhar hardware de modo compartilhado é por meio de máquinas virtuais (VM), em que o hardware normalmente é emulado. Logo, resta ao cliente apenas consumir esses recursos, por meio de uma interface web, geralmente via navegador web. 5PaaS (plataforma como serviço) Figura 2. Visão geral sobre o modelo PaaS. Fonte: Adaptada de Chandrasekaran (2014). Camada de balanceamento Camada de virtualização Plataforma virtual de desenvolvimento/teste Plataforma de desenvolvimento/teste (tempo de execução, frameworks, banco de dados, ferramenta de testes, etc.) (tempo de execução, frameworks, banco de dados, ferramenta de testes, etc.) Provedores de PaaS Provedores de PaaS Consumidor de PaaS (desenvolvedor de aplicação) Consumidores Provedores Provedores De acordo com Chandrasekaran (2014), um provedor de PaaS hospeda hardware e software em sua própria infraestrutura, dispensando os desen- volvedores de realizarem a instalação de hardware e software internos para o desenvolvimento ou a execução de aplicações. Assim, o PaaS possibilita que os desenvolvedores criem e implementem seus aplicativos de maneira on- -line, e tanto os desenvolvedores quanto os consumidores de PaaS podem usar linguagem em tempo de execução, aplicativos frameworks, bancos de dados, filas de mensagens, ferramentas de teste e ferramentas de implantação como um serviço pela internet. Geralmente, os provedores típicos de PaaS fornecem linguagens de programação como Java e C#, aplicações de frameworks e bancos de dados como PostgreSQL (Figura 3). PaaS (plataforma como serviço)6 Figura 3. Serviços fornecidos por provedores de PaaS. Fonte: Adaptada de Chandrasekaran (2014). Linguagens de programação Aplicações de frameworks Outras ferramentasBanco de dados PaaS Esses serviços fornecidos por provedores PaaS também incluem colabora- ção da equipe de desenvolvimento, design e desenvolvimento de aplicativos, teste e implantação de aplicativos, integração de serviços da web, segurança da informação e integração de banco de dados. Abstrações De acordo com Buyya, Vecchiola e Selvi (2013), as soluções PaaS são dife- renciadas pelo alto nível de abstração que fornecem, o que significa dizer que toda a parte de infraestrutura de software e hardware não é apresentada em detalhes para os usuários, pois o foco do PaaS está nos aplicativos que a nuvem suporta, ou seja, as soluções PaaS disponibilizam uma maneira de implantar e gerenciar aplicativos na nuvem, em vez de várias VM que seriam necessárias para criar e configurar toda a infraestrutura de desenvolvimento. O objetivo dos provedores PaaS consiste em introduzir uma camada de abstração entre a infraestrutura e as várias instruções sobrepostas durante a execução de entrega de aplicativos, fornecendo uma plataforma na qual os desenvolvedores consigam implantar o aplicativo de maneira contínua e eficiente nos ambientes de desenvolvimento. 7PaaS (plataforma como serviço) Os provedores PaaS permitem que os desenvolvedores não se preocupem com infraestrutura de software nem hardware, pois as VM, o data center e a rede são abstraídos dos usuários para que os desenvolvedores possam se concentrem nos objetivos de desenvolver, testar e fornecer aplicativos e serviços. Conforme Sharma (2017), as plataformas PaaS fornecem ambientes bem definidos, arquitetados, contínuos, sempre disponíveis, resilientes e escalonáveis, ajustados para as necessidades específicas de seus aplicativos e serviços. Modos de cobrança Geralmente, os usuários pagam pelo PaaS conforme o uso, no entanto alguns provedores cobram uma taxa mensal fixa pelo acesso à plataforma e aos seus aplicativos, em um modelo de pagamento baseado com frequência nas especificações do servidor, do número de projetos e do tempo de utilização. O faturamento e a medição de PaaS são realizados de acordo com o uso dos usuários, pois os componentes da plataforma se diferenciam quanto à medida de uso de nível agregado e das instâncias (RAJ; RAMAN, 2018). Assim, parâmetros como a utilização de CPU, o uso do disco por transação e a largura de banda da rede podem determinar o custo do PaaS, sendo os principais parâmetros que definem o seu faturamento (RAJ; RAMAN, 2018): � uso da CPU por hora; � disponibilidade de serviço; � cobrança por serviço utilizado; � largura de banda da rede de entrada e saída. Segundo Raj e Raman (2018), uma das métricas mais usadas para definir a cobrança do PaaS é a largura de banda consumida,no entanto existe um problema em relação a esse parâmetro: é difícil calcular exatamente qual usuário da transação está consumindo uma quantidade específica de recursos de utilização da CPU por solicitação. Uma alternativa mais eficaz de cobrança e medição consiste em calcular a quantidade de dados armazenados que um usuário específico está consumindo e realizar a cobrança adequada do ser- viço. De acordo com Raj e Raman (2018), essa técnica é eficiente, pois pode ser empregada no armazenamento como serviço para acompanhar os dados armazenados nos servidores. PaaS (plataforma como serviço)8 Ainda, existem plataformas mais simples, cujo único critério reside no fato de ter requisitos de códigos seguros e sem transações demoradas na CPU (RAJ; RAMAN, 2018). Levando esses fatores em consideração, geralmente há dois modos de cobrança do PaaS: conforme o uso de cada usuário e os serviços utilizados; e a partir de uma taxa mensal fixa pelo acesso a plataforma e seus aplicativos, independentemente da quantidade de serviço utilizada. 3 Usabilidade e casos de uso, vantagens, desvantagens e a relação com IaaS Normalmente, plataformas em nuvem oferecem modelos de computação, armazenamento e comunicação para as aplicações contidas nelas. São exemplos de aplicações em PaaS a App Engine do Google, a Azure da Microsoft e o AWS Elastic Beanstalk da Amazon. Usabilidade e exemplos de uso Para aprofundarmos um pouco mais quanto à usabilidade, apresentando exem- plos de utilização, abordaremos as plataformas App Engine, do Google, e o sistema Azure, da Microsoft. A App Engine permite que o usuário escreva e faça deployment de suas aplicações na mesma infraestrutura dos aplicativos da companhia. Como o Google dispõe de uma estrutura localizada em diversos pontos do planeta, é natural pensar que uma aplicação sob seus servidores não esteja armazenada ou sendo executada em apenas um de seus servidores de hospedagem (sim, isso acontece). As aplicações armazenadas executam em sistemas de ambiente distribuídos. Em resumo, o processo de execução da aplicação pode estar dividido e distribuído em vários servidores, o que enfatiza o poder do Google em oferecer escalabilidade. Já o sistema Azure é desenvolvido como um PaaS primário, no qual os usuários gerenciam suas hospedagens e a escala das aplicações web em data centers da corporação, o que inclui algumas características do módulo de IaaS. Assim como o Google, a Azure fornece escalabilidade, além de balance- amento de carga e vários serviços de suporte, como identidade e autenticação, criptografia de mensagens, monitoramento e gerenciamento. O sistema da Azure utiliza uma combinação de tecnologia web, como REST, HTTP e XML, integrada à ferramenta Visual Studio, o que possibilita que os desenvolvedores criem serviços que contenham a framework .NET. 9PaaS (plataforma como serviço) Plataformas com código fonte aberto também têm espaço em meio a gigantes da tecnologia, como as que permitem a construção de sua própria versão de um PaaS: � o projeto denominado Kell usa a ferramenta de Kubernetes como base para um PaaS auto-hospedado e personalizado; � o projeto de Dokku se baseia no Docker e dispõe de ganchos para plug-ins para estender o pequeno núcleo do projeto e personalizar as implantações para seus aplicativos; � o projeto de Convox Rack é um PaaS de código aberto projetado para ser execu- tado com base nos serviços da AWS, da Amazon. Vantagens e desvantagens Segundo Chandrasekaran (2014), a principal vantagem em utilizar PaaS reside em sua discrição em relação às complexidades encontradas para sua manu- tenção, assim como sua infraestrutura, o que possibilita ao desenvolvedor se concentrar na tarefa proposta de desenvolvimento. Outras vantagens e desvantagens da utilização do PaaS estão descritas no Quadro 1. Vantagem Desvantagem Fácil desenvolvimento e implan- tação (deployment): o PaaS fornece as ferramentas de desenvolvimento e teste necessárias para desenvolver, testar e implantar software em um único local. Após o desenvolvimento, a maioria dos serviços de PaaS execu- tará automaticamente o processo de teste e implantação. Bloqueio de fornecedor: a principal razão para o bloqueio de fornecedor consiste na falta de padrões, já que não existe um padrão comum entre diferentes provedores de PaaS. Outro motivo são as tecnologias proprietá- rias usadas pelos provedores de PaaS, que impedem a migração dos aplica- tivos de um provedor PaaS a outro. Quadro 1. Vantagens e desvantagens no uso de PaaS (Continua) PaaS (plataforma como serviço)10 Vantagem Desvantagem Custo reduzido: não é necessária a compra de ferramentas de desenvol- vimento e teste se os serviços de PaaS forem selecionados. O modelo permite que os desenvolvedores aluguem o software, plataformas de desenvol- vimento e ferramentas de teste para desenvolver, criar e implantar o aplica- tivo. Além disso, não exige uma infra- estrutura de ponta para desenvolver o aplicativo, reduzindo, assim, o custo total de propriedade da empresa de desenvolvimento. Segurança: um dos principais problemas encontrados nos provedores de PaaS. Nesse sistema, normalmente os dados são armazenados em servidores de terceiros. Ao selecionar o provedor de PaaS, o desenvolvedor deve revisar as políticas de uso, de conformidade e de segurança do provedor de PaaS em relação aos seus próprios requisitos de segurança Suporte a desenvolvimento ágil: a maioria dos aplicativos desenvolvidos na nova geração usa metodologias ágeis, cenário em que os provedores de PaaS se destacam. Pouca flexibilidade: infelizmente, os provedores de PaaS não fornecem aos desenvolvedores sua própria pilha de ferramentas. Em sua maioria, é oferecido suporte a várias linguagens de programação, além de serviços a banco de dados e ferramentas de suporte à programação Trabalho em conjunto: os serviços PaaS oferecem suporte a desenvolve- dores de diferentes locais para traba- lharem juntos no mesmo projeto. Fácil uso: alguns desenvolvedores podem não estar familiarizados com as interfaces fornecidas pela plataforma de desenvolvimento de aplicativos, o que dificulta o trabalho. Contudo, o PaaS fornece uma ampla variedade de ferramentas clientes, como CLI, CLI da web, UI da web, API e IDE. Quadro 1. Vantagens e desvantagens no uso de PaaS (Continuação) (Continua) 11PaaS (plataforma como serviço) Vantagem Desvantagem Despesas de manutenção: em aplicativos locais, empresas de desenvolvimento ou fornecedores de software são responsáveis por manter o hardware subjacente, criando a necessidade de ter administradores qualificados para manter os servido- res. Essa sobrecarga é eliminada pelos serviços PaaS, pois a infraestrutura subjacente é mantida pelos provedo- res de infraestrutura. Isso dá liberdade aos desenvolvedores para trabalhar no desenvolvimento de aplicativos. Aplicativos escaláveis: a maioria dos aplicativos desenvolvidos usando serviços de PaaS é de web ou SaaS, com boa flexibilidade de acesso a re- cursos extras (conforme solicitado). Os serviços PaaS fornecem escalabilidade integrada ao aplicativo desenvolvido usando a própria plataforma de PaaS. Quadro 1. Vantagens e desvantagens no uso de PaaS (Continuação) Diferenças entre IaaS e PaaS Embora o PaaS integre o modelo IaaS, os desenvolvedores não precisam se preocupar quanto aos componentes de infraestrutura (p. ex., hardware, inter- net). Conforme Buyya, Vecchiola e Selvi (2013), em diversos provedores de PaaS, normalmente são inclusos pacotes de infraestrutura, e uma das maiores preocupações sobre soluções PaaS se dá pelo bloqueio desse serviço pelos fornecedores, o que não acontece normalmente em IaaS. Em sua maioria, fornecedores de IaaS provêm servidores que podem ser altamente customi- zados em relação à pilha de software instalados. Já em ambientes de PaaS, os provedores entregam uma plataforma para desenvolvimento de aplicações com um conjuntode bibliotecas e API bem definidas, embora possam ter um número muito específico sobre a quantidade de execuções, o que pode se tornar PaaS (plataforma como serviço)12 um desconforto caso o desenvolvedor não disponha de muitos recursos para manter ou ampliar o seu pacote. Ainda, do ponto de vista financeiro, Buyya, Vecchiola e Selvi (2013) ressaltam que, embora as soluções IaaS permitam mudar o custo do capital para os custos operacionais por meio da terceirização, as soluções PaaS pos- sibilitam conhecer o custo de desenvolvimento, implantação e gerenciamento de aplicativos, o que contribui no gerenciamento de redução dos riscos, visto a constante atualização das tecnologias, transferindo o custo de atualização da tecnologia para o fornecedor de PaaS. ANTONOPOULOS, N.; GILLAM, L. (ed.). Cloud computing: principles, systems and ap- plications. London: Springer, 2010. 382 p. (Computer communications and networks). BUYYA, R.; VECCHIOLA, C.; SELVI, S. T. Mastering cloud computing: foundations and applications programming. Waltham: Morgan Kaufmann, 2013. 468 p. CHANDRASEKARAN, K. Essentials of cloud computing. Boca Raton: CRC Press, 2014. 407 p. MAHMOOD, Z. (ed.). Cloud computing: methods and practical approaches. London: Springer, 2013. 347 p. RAJ, P.; RAMAN, A. Software-defined cloud centers: operational and management tech- nologies and tools. London: Springer, 2018. 242 p. SHARMA, S. The DevOps adoption playbook: a guide to adopting devops in a multi- -speed IT enterprise. New York: Wiley, 2017. 416 p. 13PaaS (plataforma como serviço) Dica do Professor A escolha de uma PaaS determina o processo inicial do andamento de uma aplicação, seja para um projeto pessoal ou em determinada corporação. Logo, ela é essencial para o desenrolar de um projeto, levando em conta a linguagem, o banco de dados, etc. Na Dica do Professor, você vai conferir cinco pontos a serem observados antes de contratar um fornecedor de PaaS. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://fast.player.liquidplatform.com/pApiv2/embed/cee29914fad5b594d8f5918df1e801fd/6a2ae5669da2f3637164ce7e101c0889 Exercícios 1) O modelo de serviços em nuvem pode ser dividido em três: IaaS, PaaS e SaaS. Sobre o PaaS, marque a alternativa correta: A) PaaS permitem que sejam compartilhadas infraestruturas e softwares, de modo que não seja necessária sua preocupação com o desenvolvimento. B) PaaS permitem que usuários compartilhem recursos computacionais, sendo que o principal foco é oferecer ambientes de desenvolvimento na nuvem, abstraindo a necessidade de gerenciar a infraestrutura. C) PaaS permitem que seus usuários compartilhem recursos de rede, armazenamento, banco de dados e aplicações sob demanda, sendo que seu maior foco é o uso da infraestrutura computacional. D) PaaS permitem que seus usuários compartilhem recursos de rede, armazenamento, banco de dados e aplicações sob demanda, sendo que seu maior foco são os softwares. E) Em PaaS, não há preocupação com ferramentas utilizadas e a compatibilidade com o ambiente do provedor escolhido, pois todas os provedores oferecem o mesmo conjunto de ferramentas totalmente compatíveis. 2) A forma de desenvolvimento em PaaS divergem muito em relação ao sistema clássico off- line. Nesse sentido, assinale a alternativa que contém características que podem ser encontradas em PaaS: A) Todos os sistemas são pagos e não existem soluções de código fonte aberto para desenvolvimento. Além disso, a PaaS não possibilita acesso web e colaborativos com escalabilidade. B) Características como Tudo em Um, acesso web e off-line, escalabilidade, colaboração e ferramentas para clientes certamente estão relacionadas ao sistema PaaS. Infelizmente, a portabilidade ainda não é uma realidade nesses sistemas. C) PaaS oferecem ferramentas para desenvolvimento, testes e implementação (deploy), além de acesso web para o desenvolvimento, acesso off-line, escalabilidade, compartilhamento e espaço colaborativo. D) PaaS fornecem ferramentas para desenvolvimento e testes em um modelo escalável. Porém, o acesso é apenas possível off-line, pois ambientes de nuvem carecerem de acesso à Internet. E) PaaS tem funcionalidades como acesso web para o desenvolvimento, o compartilhamento de recursos e ferramentas para clientes. Porém, não oferece escalabilidade para as aplicações que têm baixo desempenho. 3) Normalmente, sistemas em nuvens, independentemente da camada de atuação, têm restrições quanto à sua utilização, ao número de ferramentas disponíveis, tudo em torno da cobertura contratual realizada pelo cliente. Marque a resposta correta sobre o modo de cobrança em PaaS: A) O sistema PaaS permite aos usuários desenvolverem aplicações. O custo anual é definido unicamente pelo consumo de energia dos servidores utilizados. B) O modelo PaaS permite aos usuários desenvolverem aplicações de modo on-line e off-line, sendo cobrados conforme a qualidade do código produzido. C) O modo de cobrança varia conforme o local em que os usuários estão quando acessam o serviço de PaaS. D) O modo de cobrança pode variar em uso da CPU por hora, disponibilidade, taxa mensal e largura de banda. E) No modelo de PaaS, é possível adquitir uma plataforma que pode ser usada de forma vitalícia sem custos adicionais. 4) Em relação ao uso do sistema PaaS, a principal vantagem está na abstração de complexidades de gerenciamento computacional. No entanto, existem algumas desvantagens como o bloqueio de fornecedor. Assinale a alternativa que descreve essa desvantagem: A) Muitos provedores de PaaS fornecem mecanismos para proteger os dados do usuário e não é suficiente para garantir a segurança das instalações no local. B) O bloqueio de fornecedor acontece pela falta de padrões, não sendo permitido que os aplicativos sejam migrados de um provedor de PaaS para outro. C) Os provedores não oferecem ferramentas apropriadas de desenvolvimento, não atendendo a todas as necessidades do desenvolvedor. D) Os dados são armazenados em servidores de terceiros. Assim, os dados do fornecedor são bloqueados por terceiros que oferecem o armazenamento. E) O fornecedor realiza o bloqueio nos dados dos clientes toda vez que os serviços entram em manutenção. 5) Geralmente, os usuários pagam pelo sistema PaaS conforme seu uso. No entanto, alguns provedores cobram uma taxa mensal fixa pelo acesso à plataforma e seus aplicativos. Considerando as formas de pagamento, qual cálculo é considerado eficaz para realizar a cobrança do sistema PaaS? A) Cálculo da quantidade de dados e uso de recursos pelo usuário específico. B) O sistema operacional utilizado pelo usuário define o custo final. C) O preço depende do barramento de memória do servidor utilizado. D) O preço varia conforme o número de acessos mensais ao ambiente. E) O mais adequado é o cálculo de acordo com a quantidade de chamados no suporte do provedor. Na prática Diversas empresas, as quais estão no mercado há muitos anos, desenvolveram o mesmo aplicativo para diferentes clientes. Às vezes, elas personalizam o aplicativo para determinado cliente, de forma que os desenvolvedores necessitam de uma plataforma para criar, testar, implantar, executar, aprimorar e dimensionar aplicativos de maneira mais rápida e econômica. Veja, em Na Prática, como a PaaS oferece esses benefícios às empresas. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://statics-marketplace.plataforma.grupoa.education/sagah/a143b778-b190-4ebf-8ee0-a843c177da1d/aa014205-6b01-4484-ae43-22b8c205aa90.jpg Saiba mais Para ampliar o seu conhecimento a respeito desse assunto, veja abaixo as sugestões do professor: Promovendo inovação com a atualização de serviços de Platform as a Service Os benefícios obtidos com essa tecnologia têm sido expressivos tanto para grandes corporações quanto para o usuário comum, que usufrui principalmente da mobilidade,da integração e da inteligência das aplicações. Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. PaaS: o que é, exemplos, vantagens e desvantagens Leia mais sobre PaaS Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar. https://ojs.brazilianjournals.com.br/ojs/index.php/BRJD/article/view/8560/7362 https://www.ivoryit.com.br/2022/05/06/paas-vantagens-e-desvantagens/