¿Qué es "la nube" y cómo se relaciona con el desarrollo? [cerrado]


14

Sigo escuchando sobre la tecnología Cloud, aunque principalmente en el desarrollo de redes sociales, etc. Lo escuché hoy nuevamente, y ahora tengo mucha curiosidad: qué es la 'Cloud' y cómo se relaciona conmigo (en mi caso, yo adivinar) como desarrollador web? ¿Cómo respondo a la pregunta que me siguen preguntando: "¿está en la nube?", Sin decir "¿Qué preguntas no tiene sentido?



21
Cloud es el nuevo Web2.0, pero sin las esquinas redondeadas.
Unholysampler

@unholysampler: ¿Gráfico o css-ed?
Christopher Mahan

Se supone que es robusto y confiable, excepto que la nube de Amazon se estrelló hace unas semanas. Y mis amigos piratas de sombrero blanco me dicen que tampoco es tan "seguro". Pero eso no significa que no sea útil.
Steven A. Lowe

1
Soy la gran nube Ignora las computadoras detrás de la cortina. Eres un programador No lo entenderías. Es una cosa de hardware. Busca en Google y haz una mejor pregunta.
JeffO

Respuestas:


32

La "nube" es una palabra de moda. No tiene una definición que no incluya la palabra "Nube". Así es como Dell describe su nube:

La computación en la nube ofrece TI como un servicio. Puede ser su propia nube privada accesible solo dentro de su organización, la nube pública de un proveedor externo o una nube híbrida que abarca ambos.

Ah, entonces la nube es TI como un servicio. Correcto. ¿Pensé que Geek Squad era TI como un servicio? Entonces, ¿la nube es Geek Squad o Geek Squad es la nube? Y si Geek Squad comienza a ofrecer servicios en la nube, ¿resultará un universo que termine con la singularidad? No hay infierno lo suficientemente caliente o profundo para la gente de marketing.

Básicamente es la progresión lógica de clústeres, virtualización y conexiones a Internet más rápidas. Las empresas pueden especializarse en proporcionar potencia de almacenamiento y procesamiento, y usted puede alojar su aplicación en su clúster y acceder a ella a través de Internet. Y, utilizando la virtualización, puede existir en un entorno arbitrario no relacionado con el hardware físico real en el que se está ejecutando. Muy genial.

La capacidad de alojar una aplicación en equipos de terceros que se puede escalar de forma transparente es muy poderosa. Puede crear una presencia en la web sin tener que comprometerse demasiado en el hardware. La implementación de hardware específica no es importante para los desarrolladores, así que eso también es bueno.

La razón por la que lo llaman la "nube" es porque en los diagramas de red tradicionales, Internet, el resto del mundo, la WAN, las redes y el hardware que están más allá del alcance del diagrama inmediato, siempre se representan como una nube.

Diagrama de Red

La propia naturaleza de la nube como país desconocido ha persistido hasta nuestros días, y es la causa de por qué no se puede describir de manera satisfactoria lo que la nube es . El punto es que no sabes lo que es. No necesitas hacerlo. Simplemente sabe que puede entregar su aplicación a Amazon, IBM o cualquier otro proveedor de "Cloud", y ellos la alojarán y le facturarán según el uso.


1
¿De qué folleto de marketing sacaste eso?
Christopher Mahan

1
Acaba de dar una definición que no incluye la palabra "nube".
Rein Henrichs

99
@Rein sí, pero tiene una imagen de una nube etiquetada como "Internet"
Steven A. Lowe

3
Esa es una excelente explicación. +100 de mi parte.

1
Santo Dios, esa es una buena respuesta.
mattsven

10

Cuando escuchas el término "nube", es realmente un término abstracto (pobre) que abarca toda la gama desde:

  • Infraestructura como servicio (IaaS): donde tiene disponibles recursos informáticos virtualizados a través de un proveedor remoto y una API programática. Ejemplos comunes de esto son Amazon EC2 y Rackspace Cloud. Tenga en cuenta que la parte "API programática" de esa descripción es la patada; de lo contrario, solo está hablando de alojamiento remoto o servidores privados virtuales (VPS).
  • Plataforma como servicio (PaaS), que es una abstracción hasta la capa de aplicación. Por ejemplo, usted como desarrollador de aplicaciones web crearía un artefacto desplegable (digamos .war en java o una gema en ruby, por ejemplo) y luego desplegaría ese artefacto en un proveedor de PaaS. Toman su aplicación, le ocultan todos los detalles de hardware y sistema operativo, y administran el escalado de su aplicación hacia arriba y hacia abajo en función del tráfico / rendimiento de su aplicación para usted. Usted, como desarrollador, solo se preocupa por escribir la aplicación en sí misma y nada más (eso es una gran exageración, pero pretende dejar en claro que solo controla la aplicación, en realidad). Ejemplos son Google App Engine o Heroku.
  • Software como servicio: aquí, como desarrollador, usted cede el control de todo a un tercero con la excepción de convertirse en cliente de sus servicios. Básicamente, utiliza una API externa para trabajar con sus datos en la infraestructura de otra persona a través de un conjunto de servicios web. Probablemente el ejemplo más popular de esto es Salesforce.

El término "nube" en sí es una descripción realmente pobre de esas tres cosas. En general, cuando las personas se refieren a la "computación en la nube", lo que están haciendo es el cambio de paradigma en el que tiene proveedores especializados en los que renuncia al control de algunas (o todas) las preocupaciones no funcionales de su software en lugar de hospedaje, escritura y gestionando todo usted mismo.


1

Mucho antes de que "The Cloud" fuera una palabra de moda, las personas que dibujaban diagramas de red dibujarían todos los clientes, servidores, enrutadores y conmutadores bajo su control directo, y las conexiones entre ellos, pero tradicionalmente solo dibujan una nube para las partes de la red que usan No control. Para algunos ejemplos, haga una búsqueda de imágenes en Google para PSTN (red telefónica pública conmutada). La nube representa una cosa nebulosa por la que entran y salen nuestros cables. No tenemos que entender cómo funciona porque otras personas se encargan de eso. Solo confiamos en que los paquetes vuelvan al lugar correcto del otro lado. Por lo general, Internet se dibuja como una nube, porque una vez que sus paquetes llegan a su ISP, usted confía en que sabe cómo llevarlos al lugar correcto y no le importa qué enrutadores específicos atraviesa.

La "computación en la nube" en pocas palabras se refiere a los servicios alojados dentro de la nube en el diagrama de red de su hogar o negocio, es decir, Internet. El hardware no está bajo su control directo, simplemente envía sus datos "a la nube" y confía en su proveedor para procesarlos y almacenarlos para que estén disponibles cuando necesite recuperarlos. El significado de la palabra de moda también implica que las cosas que ahora se manejan "en la nube" eran tradicionalmente el dominio de una computadora local. Es posible que tradicionalmente haya tenido un servidor de respaldo, pero cambió a un servicio como carbonite que hace sus respaldos "en la nube". Anteriormente usó MS Office en su escritorio local, pero ahora usa documentos de Google, etc.

Como desarrollador web, lo que significa para usted es que los clientes a menudo buscan formas de reemplazar servicios tradicionalmente manejados por computadoras de escritorio con aplicaciones web. Poder reemplazar y no simplemente complementar el software de escritorio puede darle una ventaja competitiva.


La nube representa "una cosa nebulosa", me gusta. Muy meta :-)

1

Mucha gente ha explicado admirablemente qué es la nube, así que trataré de abordar lo que la nube puede brindarle (un desarrollador web) además de unicornios y arcoíris dorados: (con enchufes desvergonzados para nuestra tecnología)

  1. Hosting y escalado horizontal bajo demanda - Amazon EC2. Supongamos que nuestro sitio web se reduce o se vuelve a modificar y necesita hosts adicionales solo para los próximos días, no hay problema. Se pueden subir y bajar bajo demanda.
  2. Carga de grano fino: pague solo por lo que usa. ¡El servicio más barato en AWS es en realidad gratuito para uso limitado! Así que intente construir su sitio web sin costo alguno. No más saltos para el alojamiento de centros de datos, etc.
  3. Desea crear un sitio que necesite una base de datos de respaldo, no hay problema. Puede usar AWS SimpleDB para noSQL / RDS si necesita SQL.
  4. ¿Quieres almacenar esas lindas imágenes de gatitos y vincularlas? AWS S3.
  5. ¿Desea dirigirse a un conjunto global de personas, con baja latencia? AWS Cloud front! ¡Estos tienen servidores perimetrales ubicados cerca de sus clientes para que obtengan esas imágenes rápidamente!
  6. Monitoreo en vivo / informes del uso de sus sitios
  7. ¿Desea un sistema distribuido para resolver un gran problema de conjunto de datos? AWS MapReduce
  8. ¿Quieres enviar un correo electrónico a tus clientes de manera confiable? AWS SES
  9. ¿Desea realizar un procesamiento asincrónico como un backend para pedidos en línea? AWS SQS

Hay muchos más en http://aws.amazon.com/ . ¡Echale un vistazo! Obviamente, todo esto es de AMZN, Otros como Google también tienen ofertas competitivas.


0

El problema es "Cloud" es un significado algo ambiguo (en su alcance).

Lo mínimo que la mayoría de las personas piensan cuando escuchan "Cloud" es la infraestructura virtualizada y sus beneficios:

  • eliminar la redundancia necesaria para dar cuenta de posibles fallas de hardware
  • el potencial de tener recursos de infraestructura "elásticos" o bajo demanda (es decir, girar 10 vms más completamente aprovisionados para manejar la carga máxima o estacional)
  • facilidad de reasignación / reasignación / desmantelamiento de recursos
  • facilidad de replicar entornos
  • capacidad de "capturar" y "revertir" recursos de infraestructura virtualizados y, en algunos casos, entornos completos

Por cierto, no siempre obtienes todo en la lista, e incluso si lo haces, puede que no sea 100%. Puede buscar en Google lo que sucedió con "AWS US East Outage" para obtener un ejemplo del mundo real.

A veces, las personas también agregan otros servicios como parte de "Cloud" como Base de datos, Registro y cualquier otro servicio que se encuentre entre el espacio entre "infraestructura" y "aplicación".

Algunas personas también usan "Cloud" como sinónimo de "virtual". A veces las personas también lo usan para referirse a "Software y Plataforma como Servicio".


0

La nube es solo otra palabra para internet. Ahora se está volviendo más popular a medida que Internet madura lo suficiente como para que las organizaciones confíen en él para servicios de software importantes, por lo que seguimos escuchando sobre cosas como SAAS.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.