texto:   A-   A+
eliax

Microsoft lanza Windows Azure
eliax id: 5735 josé elías en oct 27, 2008 a las 10:11 PM (22:11 horas)
Microsoft acaba de entrar oficialmente al mercado de Cloud Computing (o "Computación en la Nube") al anunciar su Azure Services Platform, un conjunto de herramientas que será parte de Windows 7, pero que los desarrolladores ya pueden empezar a utilizar desde ahora.

Desde ya muchos dentro y fuera de Microsoft llaman a este iniciativa "Windows Azure".

Con Azure, desarrolladores de software que utilicen tecnologías como el Microsoft .NET Framework y Visual Studio podrán (al menos en teoría) crear aplicaciones que escalan "en la nube" de servidores de Windows de manera natural, básicamente ofreciendo una alternativa a soluciones como el Google Compute Engine o el Amazon Elastic Compute Cloud (Amazon EC2).

Para los que no están al tanto, Cloud Computing es una técnica que permite tratar a decenas, miles o millones de máquinas en Internet como si fueran una sola (de ahí el término "nube", ya que por lo general uno representa todas las máquinas en Internet como una "nube" en diagramas de presentaciones), con el objetivo de poder (1) escalar la aplicación a altas demandas de usuario, (2) hacer las aplicaciones mas resistentes a fallas, y (3) bajo algunos escenarios disminuir costos.

El problema es que por lo general programar para este tipo de sistemas conlleva aprender nuevas formas de hacer las cosas, muchas de las cuales no son triviales y que requieren planeamiento previo de la arquitectura de tu aplicación. Sin embargo, tanto Google y Amazon, y ahora Microsoft, todos prometen aliviar la ruta del aprendizaje y de llevar soluciones prácticas al mercado con sus distintas implementaciones.

¿Pero qué exactamente es Azure?

Primeramente hay tres aspectos distintos de Azure que he podido discernir leyendo la documentación hasta ahora proveída por Microsoft.

1. Azure es en sí mismo un nuevo sistema operativo de Microsoft, y no simplemente un servicio que ejecutará "sobre" Windows 7 y futuras versiones de Windows. Piensen de Azure como "Windows Distribuido por Internet", en donde los servicios a los que te tienes acceso por parte de Azure no son locales, sino que existen "en la nube de Internet", y que accedes a ellos gracias a unos APIs (interfaces de programación). A esto es que Microsoft se refiere por "Windows Azure".

2. Azure es además una "nube de servidores", sobre los cuales ejecutan aplicaciones diseñadas específicamente para Azure. Esto significa (al menos que Microsoft aclare estoy diga lo contrario) que nadie en realidad podrá "comprar" Azure para instalar localmente, sino que Microsoft será quien proveerá una mega-granja de servidores que proveerán los servicios de Azure y los espacios virtuales en donde se instalarán aplicaciones de Azure. Esto es muy similar a lo que hace Google y Amazon hoy día.

3. Azure es además un entorno de desarrollo, herramientas y APIs que utilizas para desarrollar aplicaciones compatibles con Azure, y que pruebas en el ambiente de Azure. No se todavía si Microsoft proveerá algún tipo de "emulador local" como lo hace Google con su Compute Engine para que los desarrolladores puedan desarrollar y probar localmente sin tener que subirlo todo a Internet primero antes de probar.

Algo interesante es que podrás acceder a servicios de Azure no solo desde aplicaciones .Net, sino que además desde Java y Ruby, aunque conociendo el historial de Microsoft no les tengo confianza en que después de un par de ellos decidan solo soportar a .Net (como hicieron con Java anteriormente). Noten sin embargo que si deseas crear servicios (es decir, programas que funcionen dentro de Azure), que tu única opción de programación es .Net.

Si todo esto les suena familiar, es porque es precisamente lo que describí Microsoft debería hacer si quería mantenerse relevante en la Era Internet, con la única diferencia siendo que cuando escribí sobre esto hace unos meses atrás no tenía un nombre y lo llamé "Windows X".

Noten que aun falta mucho por aprender sobre Windows Azure, pero sí hay algunas cosas que puedo decir al respecto.

Primero, esta es una excelente movida por parte de Microsoft, ya que por primera vez en una década le ofrece a los programadores leales de sus sistemas operativos algo nuevo y refrescante, y verdaderamente poderoso e innovador. No duden que Azure será exitoso, aun si Microsoft no lograra atraer a nadie mas que un cierto porcentaje de los programadores de Windows que ya posee.

Sin embargo, con esto viene un precio, y es que quien sea que diseñe para Azure (y a cierto grado se podría decir algo similar sobre el Google App Engine y el Amazon EC2) estaría básicamente vendiéndole su alma a Microsoft, ya que no solo tendría Microsoft control total sobre tu aplicación, sino que además sobre temas como su rendimiento, almacenamiento, versionamiento, lenguajes, APIs, y ejecutables.

En otras palabras, estarías intercambiando flexibilidad en escalabilidad y confiabilidad de tus aplicaciones, por atarte mas fuerte que una soldadura de acero al mundo Microsoft.

Noten sin embargo, que sea como sea, Cloud Computing está aquí para quedarse, y será exitoso de una manera u otra. En mi opinión lo que necesitamos ahora es un grupo de estándares que empresas como Google, Microsoft y Amazon sigan, o sino una verdadera alternativa de la comunidad del Software Libre, que sea adoptada al menos por los grandes alojadores de websites de Internet, haciendo la plataforma mas abierta y libre para todos.

Por ahora sin embargo, con todas las dudas aun por responder sobre Windows Azure, mi punto de vista es que Microsoft va por un muy buen camino con esto...

Nota a los mas técnicos: Para que tengan una idea de lo que se sentiría programar con Azure, la idea es similar a programar con Servicios Web, en donde por ejemplo si tu aplicación requiere de enviar emails, lo que obtienes es un API que te da un interfaz que utilizas para hacer llamadas remotas a un servicio "en la nube" que envía emails. Específicamente, Azure implementa interfaces remotos con SOAP y REST, por lo que en teoría podrías acceder a sus servicios desde cualquier entorno de programación que soporte estas tecnologías.

En el mundo Azure, no tienes idea de cómo funcionan estos servicios, simplemente llamas los métodos necesarios con los parámetros acordados, y mágicamente (por ejemplo) los emails son enviados, aun en grandes cantidades, tomando Azure los millones de emails que haya que mandar y distribuyendo la carga sobre su fábrica de servidores.

Similarmente, así mismo almacenarías datos; simplemente llamas métodos que guardan objetos, pero tu ni idea tienes en donde en realidad son almacenados esos objetos, lo único que te interesa es que los puedas volver a leer, y hacer todo esto con baja latencia por Internet.

Así, poco a poco, construyes una aplicación que reside distribuida por toda la fábrica de servidores de Windows Azure, en donde en vez de hacer llamadas locales lo que haces es hacer llamadas genéricas que son automáticamente distribuidas por Internet según la potencia requerida.

Noten además que Microsoft piensa implementar todos sus servicios de Internet sobre Azure, como Live Hotmail, Live Messenger, etc, por lo que también tendrás acceso programático a tales servicios desde tus aplicaciones, lo que estará genial, ya que por ejemplo podrás crear aplicaciones que están conscientes de tu identidad en el mundo "Live" de Microsoft, y tener acceso a tu agenda de contactos, a tus emails, crear sesiones de chat, etc, todo bajo tu control.

Página oficial de Azure

Página de descarga de los SDKs para programar con Azure



autor: josé elías

Comentarios

  • hay Elias, Elias Elias.......

    ......"Sin embargo, con esto viene un precio, y es que quien sea que diseñe para Azure (y a cierto grado se podría decir algo similar sobre el Google App Engine y el Amazon EC2) estaría básicamente vendiéndole su alma a Microsoft, ya que no solo tendría Microsoft control total sobre tu aplicación, sino que además sobre temas como su rendimiento, almacenamiento, versionamiento, lenguajes, APIs, y ejecutables.

    En otras palabras, estarías intercambiando flexibilidad en escalabilidad y confiabilidad de tus aplicaciones, por atarte mas fuerte que una soldadura de acero al mundo Microsoft....."

    Por que no pusiste esto cuando, Hablaste sobre Google, Amazon, o sobre la herramienta de desarrollo de Apple...

    Nunca he visto a alguien tan frustrado con Una compania como TU, que paso no pudiste trabjar ahi....

    en fin

    Yo....

    • Que pedante es este chaval "YO" no?

    • 100% de acuerdo..... YO

    • no podia ser alguien mas envidioso
      YO................
      por como hablas veo k eres un pobre diablo
      y excusame k hable asi eliax
      pero gente asi me cae mal
      y saludame a jean
      y sigue asi
      ignora a la gente ignorante
      :)

  • Aclararle a Elias varias cositas:
    1. Las aplicaciones desarrolladas para la plataforma de Windows Azure pueden ser debugeadas, testeadas y ejecutadas localmente sin necesitadad de subir los proyectos a la Nube. (Mediante el Web Delopment Server Local que trae Visual Studio).

    2. Microsoft tiene control sobre Rendimiento, almacenamiento NADA mas. Vos elegis el que version deseas ajecutar, las APIS a utilizar y las aplicaciones que ejecutar. (siento que esto no tiene nada de malo siendo que Microsoft te da la mejor plataforma para el desarrollo de aplicaciones a nivel mundial, poniendote muchos lenguajes, muchas APIs y todo esto con excelente rendimiento).

    3. Tu no intercambias NADA, la escalabilidad de tus aplicaciones depende de TI, tenes todo para hacerlas escalables y de igual forma confiables. Recorda que este servicio se ofrece para Developers, ITPros, ISV, Corporaciones, etc y Microsoft te da has un 99.9999% de disponibilidad. Buscame una empresa q te de el 100% y te doy un premio.
    4. Recordemos que bajo este modelo de programacion tambien podemos programar aplicaciones para Live Mesh (www.mesh.com) y con mesh podemos hacer deploy de nuestras aplicaciones a Desktop, Web, Mobile, Mac y Dispositivos especiales como iFrames e Impresoras. Facil y sensillo.
    5. Vos lo sabes bien, Amazon, Apple y Google, ya se quedaron atras. Microsoft les gano la partida Cloud, lo admito por el momento.
    6. Si quieren mas informacion ingresen a http://microsoftpdc.com/ alli pueden darle seguimiento a PDC (Professional Developers Conference) evento en el cual se estan dando los ultimos avances de Microsoft.
    7. Pueden visitar el Blog de Ricardo Jimenez quien trabaja para Microsoft, este contiene muchisima informacion estas tecnologias: http://blogs.msdn.com/ricardoj/

  • el pipo :-o, cuanta tiradera. Y los hackers como se van a hacer?

    • lo mas seguro es que hackeen windows 7 mas rapido que al iPhone... :)

Añadir Comentario

tu nombre
tu email
(opcional)
web personal
(opcional)
en respuesta a...
comentario de caracteres máximo
7 + 4 = requerido (control anti-SPAM)
¿De qué color es el cielo?: requerido (control anti-SPAM)
 

"El problema del Capitalismo actual, es que realmente no es capitalismo, sino un sistema mixto (donde se mezcla capitalismo con socialismo), y ahí reside el problema.

Lo que Elias se refiere con que es un sistema consecuente con la realidad, es que el capitalismo premia a las personas que mas se esfuerzan, o a las que mas aportan a la sociedad.

Lo que es injusto del socialismo, es que el gobierno te obliga, a punta de pistola, a ser solidario con los demás (a través de impuestos). Quieras o no. Y eso va contra la naturaleza humana: obligar a las personas a compartir sus bienes, independientemente de que quieran o no.
"

por "Juan Carlos" en jul 24, 2014


en camino a la singularidad...

©2005-2019 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax