En mi opinión, lo que define cloud computing es que los recursos informáticos subyacentes (almacenamiento, procesadores, RAM, equilibradores de carga, etc.) de los servicios y software basados en la nube están completamente abstraídos del consumidor del software/servicios. Esto significa que el proveedor de recursos basados en la nube asume la responsabilidad del rendimiento/confiabilidad/escalabilidad del entorno informático.
Desde el punto de vista de los desarrolladores de aplicaciones, esto puede ser una gran ventaja, ya que la adquisición, mantenimiento, ajuste, monitoreo y escalado de hardware para satisfacer las demandas de crecimiento es difícil y costoso.
Para ISV más pequeños, la computación en la nube ofrece la capacidad de prototipos, pruebas e implementación de software sin ningún gasto de capital.
Para las aplicaciones más grandes, el beneficio generalmente es la escalabilidad ilimitada y lo que equivale a la externalización de las responsabilidades de alojamiento de TI/aplicaciones, así como el acceso instantáneo a nuevos servidores/almacenamiento/lo que se solicite. A menudo, los proveedores de servicios en la nube ofrecerán niveles de redundancia, confiabilidad e incluso seguridad, pero las tiendas de informática internas más grandes nunca podrían alcanzarlo por el alto costo de todo.
La principal desventaja para los desarrolladores de aplicaciones es la pérdida de control. El hardware no solo se aloja externamente en un entorno de nube, sino que se abstrae, de modo que si su aplicación necesita control directo sobre el hardware, no tiene suerte. Y debes confiar en el proveedor de la nube. Todos ellos ofrecen un 99.9% de tiempo de repetición y SLA, pero dudo que esas estadísticas se hayan realizado. Pero tienes que preguntarte, ¿podría hacerlo mejor? La respuesta es a menudo no. Pero el control del hardware no es el único lugar donde se pierde el control: la integración con sistemas basados en la nube también puede ser más difícil que en el software local o autogestionado por razones obvias. Sin embargo, me parece que este obstáculo se está evaporando a medida que las nuevas tecnologías y API sólidas eliminan muchas dificultades de integración creadas al ejecutar aplicaciones fuera de LAN/WAN.
Otra desventaja puede ser el rendimiento. La ejecución de una aplicación en su LAN local probablemente proporcionará una experiencia algo más ágil a los usuarios locales que la ejecución desde la nube. Pero si su audiencia se distribuye, ese beneficio solo se puede aplicar a un subconjunto de la audiencia de su aplicación.
La informática distribuida, como ya se ha dicho algunas veces, solo está informándose orquestada entre dos o más computadoras. El Cloud Computing es, por definición, computación distribuida, pero una forma especializada.
Here is a nice whitepaper por David Chappell. Es un documento patrocinado por Microsoft, por lo que se presenta en términos de la plataforma en la nube de Microsoft (Azure), pero los principios subyacentes son bastante universales, y David Chappell siempre es una lectura bastante fácil.
Es otra palabra de moda para los servicios en Internet para activar el reflejo "next big thing" de silicon valley VC, atrayendo así algo de dinero que de lo contrario se gastaría en un nuevo yate. – artificialidiot
Sean tiene un anuncio publicitario para "Microsoft ...Cloud Power ". – motoku