Piattaforma di cloud computing come servizio (PaaS)
Platform-as-a-Serviceoffre l'ambiente di runtime per le applicazioni. Offre inoltre strumenti di sviluppo e distribuzione necessari per sviluppare applicazioni. PaaS ha una caratteristica di point-and-click strumenti che consentono ai non sviluppatori di creare applicazioni web.
App Engine of Google e Force.com sono esempi di fornitori che offrono PaaS. Lo sviluppatore può accedere a questi siti Web e utilizzare il built-in API per creare applicazioni basate sul web.
Ma lo svantaggio dell'utilizzo di PaaS è che lo sviluppatore locks-in con un particolare fornitore. Ad esempio, un'applicazione scritta in Python contro l'API di Google e che utilizza App Engine di Google è probabile che funzioni solo in quell'ambiente.
Il diagramma seguente mostra come PaaS offre un'API e strumenti di sviluppo agli sviluppatori e come aiuta l'utente finale ad accedere alle applicazioni aziendali.
Benefici
Di seguito sono riportati i vantaggi del modello PaaS:
Spese amministrative inferiori
Il cliente non deve preoccuparsi dell'amministrazione perché è responsabilità del fornitore di servizi cloud.
Costo totale di proprietà inferiore
Il cliente non deve acquistare hardware, server, alimentazione e archiviazione dati costosi.
Soluzioni scalabili
È molto facile aumentare o diminuire automaticamente le risorse, in base alla loro richiesta.
Software di sistema più aggiornato
È responsabilità del fornitore di servizi cloud mantenere le versioni del software e le installazioni delle patch.
Problemi
Piace SaaS, PaaS impone inoltre notevoli oneri ai browser del cliente per mantenere connessioni affidabili e sicure ai sistemi del provider. Pertanto, PaaS condivide molti dei problemi di SaaS. Tuttavia, esistono alcuni problemi specifici associati a PaaS, come mostrato nel diagramma seguente:
Mancanza di portabilità tra i cloud PaaS
Sebbene vengano utilizzati linguaggi standard, le implementazioni dei servizi della piattaforma possono variare. Ad esempio, le interfacce di file, code o tabelle hash di una piattaforma possono differire da un'altra, rendendo difficile il trasferimento dei carichi di lavoro da una piattaforma all'altra.
Pianificazione del processore basata su eventi
Le applicazioni PaaS sono orientate agli eventi, il che pone vincoli di risorse alle applicazioni, ovvero devono rispondere a una richiesta in un dato intervallo di tempo.
Ingegneria della sicurezza delle applicazioni PaaS
Poiché le applicazioni PaaS dipendono dalla rete, devono utilizzare esplicitamente la crittografia e gestire i rischi per la sicurezza.
Caratteristiche
Ecco le caratteristiche del modello di servizio PaaS:
Offerte PaaS browser based development environment. Consente allo sviluppatore di creare database e modificare il codice dell'applicazione tramite l'interfaccia di programmazione dell'applicazione o strumenti punta e clicca.
PaaS fornisce built-in security, scalability, e web service interfaces.
PaaS fornisce strumenti integrati per la definizione workflow, approval processes, e regole aziendali.
È facile integrare PaaS con altre applicazioni sulla stessa piattaforma.
PaaS fornisce anche interfacce di servizi web che ci consentono di connettere le applicazioni esterne alla piattaforma.
Tipi di PaaS
In base alle funzioni, PaaS può essere classificato in quattro tipi come mostrato nel diagramma seguente:
Ambienti di sviluppo autonomi
Il stand-alone PaaS funziona come entità indipendente per una funzione specifica. Non include licenze o dipendenze tecniche da applicazioni SaaS specifiche.
Ambienti di sola consegna delle applicazioni
Il application delivery PaaS include on-demand scaling e application security.
Piattaforma aperta come servizio
Open PaaS offre un open source software che aiuta un provider PaaS a eseguire le applicazioni.
Strutture per lo sviluppo di componenti aggiuntivi
Il add-on PaaS permette di personalizzare la piattaforma SaaS esistente.