venerdì 12 ottobre 2012

PAAS: Platform As A Service - e il middleware diventa un servizio


In questi giorni la Uhuru Software sta effettuando una campagna pubblicitaria per far conoscere un nuovo servizio di Cloud Hosting.

Di fatto non si tratta del solito servizio di VPS o di Application Hosting, ma di un qualcosa di più simile alla gestione delle risorse come avviene sui servizi di Amazon.

La definiscono Platform as a Service:

Welcome to the Uhuru AppCloud!

Our Platform as a Service makes it easy to deploy your custom applications in seconds! We bring Microsoft tools together with proven Open Source services to deliver a cloud capable of managing any architecture and any application- with no need to touch a server again.
Click here to try it out now! 
Sottoscrivendo il servizio si ha accesso ad un pannello in cui è possibile attivare ed effettuare il deploy di singoli "service" , così come effettuare la pubblicazioni di proprie applicazioni, senza preoccuparsi, appunto, della piattaforma.



Lo scenario tipico in cui una applicazione viene rilasciata prevede infatti che ci siano disponibili:
  1. Capacità elaborativa (CPU e RAM)
  2. Connettività
  3. Sistema Operativo
  4. Storage / FileSystem
  5. Application Server / Interprete
  6. Database
  7. Applicazione Custom
Solitamente l'offerta di VPS mette a disposizione i primi 2 , prevedendo la possibilità di utilizzare dei template già configurati che offrano Sistema Operativo / Application Server e Database già installati.
Ma ciò che viene acquistato è il servizio relativo al VPS, non ai singoli componenti.
Se occorre più spazio per lo storage o per il database il provider non fa differenza: vende più spazio disco
Se occorre più capacità elaborativa per l'application server o per il database stesso discorso.. si acquista più CPU

Sistemisti e Analisti hanno in parte aggirato / risolto il problema: o replicando una architettura complessa su più macchine virtuali, o affidandosi a servizi cloud come  AmazonS3 (Storage), AmazonEC2 (Compute) o AmazonRDS (Database)

L'offerta di Uhuru va in questa direzione. Volendo effettuare il deploy di una applicazione sviluppata da noi che utilizza fileSystem e db è possibile:
  • attivare un servizio di FileSystem, necessario per ospitare i sorgenti delle nostre applicazioni custom e i file che queste genereranno
  • attivare un servizio Database, specificando le caratteristiche del servizio (tipo di db, dimensioni, servizi aggiuntivi)
  • attivare un servizio di "elaborazione" che eseguirà i sorgenti e la nostra applicazione.
Gli sviluppatori continueranno ad utilizzare il linguaggio che preferiscono, tra quelli supportati dal provider, ma scomparirà del tutto la necessità di effettuare installazioni, settaggi od altro

Un esempio dei Servizi, Framework e Runtime diponibili
Prossimamente vedremo come effettuare il deploy di una applicazione....