sábado, 6 de febrero de 2016

Elegir IaaS, PaaS, SaaS o un Shared Hosting

A lo largo del tiempo al desarrollar una aplicación web, una de las preguntas iniciales era con que lenguaje, tecnología y base de datos íbamos a desarrollarlo, en base a estos parámetros escogíamos un hosting y uno de los planes que mas convenía también en cuanto a economía, rendimiento, capacidad de almacenamiento y demás características.

El alojamiento compartido actualmente se ha vuelto horrible, pues en algunos casos el plan original que teníamos ya se encuentra inactivo por lo cual la empresa proveedora pide que migremos a un nuevo plan pero a mayor costo, esto también debido a que a lo largo del tiempo nuestros aplicativos consumen mas espacio en disco y por lo tanto también en memoria.

El hosting compartido (Shared hosting) es una tecnología antigua que quizá con el tiempo deje atrás (Si, aun conservo uno). Lidiar con un hosting compartido a veces es complicado, no se lo deseo ni a mis enemigos.

Un problema del hosting compartido es por ejemplo hacer que soporte instancias de Node.js, si nosotros usáramos un PaaS por ejemplo Heroku, Nodejitsu o Modulus esto es simple, pero instalar una instancia de Node.js en un hosting compartido a veces no es posible.



Actualmente contamos con alternativas al hosting compartido como son IaaS, PaaS y SaaS.

IaaS (Infraestructura como servicio):  se refiere a la tercerización de los equipos utilizados para apoyar las operaciones, incluido el almacenamiento, hardware, servidores y componentes de red. Ejemplo: DigitalOcean

PaaS (Plataforma como servicio): es un conjunto de utilitarios para abastecer al usuario de sistemas operativos y servicios asociados a través de Internet sin necesidad de descargas o instalación alguna. Ejemplo: OpenShift

SaaS (Software como servicio): es un modelo de distribución en el que las aplicaciones están alojadas por un proveedor de servicio y puestas a disposición de los usuarios a través de Internet. Ejemplo: Temboo

Entonces cual usar?. Pues para obtener la respuesta debes evaluar grado de libertad que necesites, si vas a tener uno o muchos clientes alojados, la tecnología o tecnologías que usaras para el desarrollo de tus aplicaciones así como la base de datos o bases de datos que necesites, la magnitud de transferencia, almacenamiento necesario y finalmente tus habilidades, por ejemplo si vas a contratar un IaaS el cual esta sobre un servidor CentOS y no tienes la mas remota idea de linux pues es evidente que no es la mejor opción para usted.

En cuanto a seguridad, en cada una de las tecnologías en la nube disponibles debe quedar claro que hay una responsabilidad compartida entre el usuario y el proveedor del servicio las cuales se muestran en el siguiente gráfico tomado de IEEE (click en la imagen para ampliar):


No hay comentarios:

Publicar un comentario