resource microsoft management manage azure azure-web-roles azure-web-sites

microsoft - manage azure



¿Cuál es la diferencia entre un sitio web de Azure y un rol web de Azure? (10)

Acabo de publicar una publicación de blog completa sobre este tema en http://robdmoore.id.au/blog/2012/06/09/windows-azure-web-sites-vs-web-roles/ .

Un extracto de mi conclusión: si necesita una enorme escala, centros de datos SSL, asiáticos o del oeste de EE. UU., Una configuración no estándar (de IIS, puertos, diagnóstico, certificados de seguridad o scripts de inicio), RDP o Roles de trabajador rentables ( combinado con su rol web), por ahora tendrá que atenerse a los roles web.

De lo contrario, los sitios web son una gran opción!

¿Cuáles son las diferencias materiales entre los nuevos sitios web de Azure y los roles web tradicionales de Azure para una aplicación MVC de ASP.NET? ¿Por qué motivo elegiría un "sitio web" en lugar de un "rol web" o viceversa?

Supongamos que necesitaría la misma capacidad en cualquier caso (por ejemplo, 2 instancias pequeñas). Los precios parecen comparables además del hecho de que hay un descuento temporal del 33% para los sitios web mientras se encuentran en su período de vista previa.

¿Hay cosas que puedo hacer con un "sitio web" que son difíciles o imposibles con un rol web? Por ejemplo, ¿es fácil colocar varios sitios web en un solo conjunto de máquinas virtuales utilizando "sitios web"? ¿Pierdo algo con un "sitio web" frente a un "rol web"? ¿Capacidad para afinar IIS? ¿Capacidad para utilizar el servicio de caché localmente?


Azure Web Role es como un host privado virtual. Obtiene una máquina virtual que actúa como su servidor web y posee esa instancia de máquina virtual.

Los sitios web de Azure son como un servicio de alojamiento compartido elástico. Usted implementa su aplicación en un servidor web que no es controlado por usted y que también sirve para los sitios de otros usuarios. Puede escalar su sitio hacia arriba y hacia abajo (con algún cargo adicional) para hacerlo más elástico a medida que cambien sus necesidades de recursos.


Dos cosas más que encontré fue el costo de obtener SSL para un sitio de dominio personalizado y configuraciones de múltiples inquilinos.

Para el sitio web, debe pagar mensualmente por encima de la instancia estándar (la instancia más pequeña es la opción más barata). Esto significa que para obtener https de dominio personalizados le costaría ~ 70 / mes para una instancia pequeña más ~ 41 / mes para SSL que admite todos los navegadores.

Para WebRole, puede obtener una instancia de XS y agregar su propio SSL de forma gratuita, lo que significa ~ $ 15 por mes y tiene un dominio personalizado con SSL.

Para el sitio web de varios inquilinos, consulte el comodín dinámico de Azure para varios inquilinos CName


Esta es una pregunta común, y me gustaría dar un extracto de msdn.

Acceso a servicios como almacenamiento en caché, bus de servicio, almacenamiento, base de datos SQL Azure. Sitio web: Sí. Rol web: Sí.

Soporte para ASP.NET, ASP clásico, Node.js, PHP- Sitio web: Sí WebRole: Sí

Contenido y configuración compartidos: sitio web: sí WebRole: no

Implementar código con GIT, FTP- Sitio web: Sí WebRole: No

Implementación casi instantánea-Sitio web: Sí WebRole: No

MySQL-as-a-service support-WebSite: Sí WebRole: Sí

Múltiples entornos de implementación (producción y almacenamiento) -Sitio web: No WebRole: Sí

Red de aislamiento-Sitio web: No WebRole: Sí

Acceso de escritorio remoto a los servidores-Sitio web: No WebRole: Sí

Capacidad para ejecutar programas con permisos elevados -Sitio web: No WebRole: Sí

Capacidad para definir / ejecutar tareas de inicio-Sitio web: No WebRole: Sí

Capacidad para usar marcos o bibliotecas no compatibles-Sitio web: No WebRole: Sí

Soporte para Windows Azure Connect / Windows Azure Network-WebSite: No WebRole: Sí

Para obtener más detalles, visite este enlace: http://blogs.msdn.com/b/silverlining/archive/2012/06/27/windows-azure-websites-web-roles-and-vms-when-to-use-which.aspx


Hay un escenario más que está en el aire: después de que se eliminen estas 500 excepciones, no han dicho nada sobre la capacidad de los sitios web de Azure para manejar los comodines CNAME. Varios de nosotros estamos usando el acelerador de roles web de Nate en servicios en la nube, debido a que un hack de una línea proporcionó la capacidad de subdominio comodín en el software de Nate. No podemos mover estas aplicaciones de subdominio comodín hasta que sepamos que los sitios web de Azure podrán manejarlas. Si nunca será capaz de hacer eso, entonces se reduce como un aspecto positivo en el lado de la función de rol web de la ecuación. También es de destacar que, dado que los precios son exactamente iguales (después de que caduque el descuento de vista previa), no estoy seguro de querer renunciar a mi acceso a RDC y al Visor de eventos (solo para mencionar dos cosas).


Los roles web le ofrecen varias funciones más allá de las aplicaciones web (anteriormente, sitios web):

  • Capacidad para ejecutar scripts de inicio elevados para instalar aplicaciones, modificar la configuración del registro, instalar contadores de rendimiento, ajustar el IIS, etc.
  • Capacidad para dividir una aplicación en niveles (tal vez Rol web para front-end, Rol de trabajador para procesamiento de back-end) y escalar de forma independiente
  • Capacidad de RDP en su máquina virtual para fines de depuración
  • Aislamiento de red
  • Dirección IP virtual dedicada, que permite que las instancias de rol web en un servicio en la nube accedan a máquinas virtuales con restricción de IP
  • Puntos finales restringidos de ACL (agregados en Azure SDK 2.3, abril de 2014)
  • Soporte para cualquier puerto TCP / UDP (los sitios web están restringidos a TCP 80/443)

Las aplicaciones web tienen ventajas sobre los roles web, sin embargo:

  • Implementación casi instantánea con historial de implementación / reversiones
  • Visual Studio Online, github, git local, ftp, CodePlex, DropBox, soporte de implementación de BitBucket
  • Capacidad para desplegar uno de los numerosos CMS y marcos (como WordPress, Joomla, Django, MediaWiki, etc.)
  • Uso de base de datos SQL o MySQL
  • Sencillo y rápido de escalar de nivel libre a nivel compartido a nivel dedicado
  • Trabajos web
  • Copias de seguridad del contenido del sitio web
  • Herramientas de depuración basadas en web incorporadas (consola de depuración simple cmd / powershell, explorador de procesos, herramientas de diagnóstico como registro de secuencias, etc.)

Con los despliegues de abril de 2014 y septiembre de 2014, ahora hay algunas características comunes a aplicaciones web y roles web (y roles de trabajador), que incluyen:

  • Staging + slots de producción
  • DNS comodín, certificados SSL
  • Integración de Visual Studio
  • Soporte de gestor de tráfico
  • Soporte de red virtual

Aquí hay un screengrab que tomé del formulario de selección de la galería de sitios web:

Creo que las aplicaciones web son una excelente manera de ponerse en marcha rápidamente, donde puede pasar de recursos compartidos a reservados. Una vez que haya superado esto, puede pasar a los roles web y expandirse según lo necesite.


Los sitios web de Azure, los trabajadores web y las máquinas virtuales son tres enfoques informáticos diferentes disponibles en Windows Azure. Se diferencian en el nivel de control y responsabilidades:

  • El sitio web de Azure tiene el nivel de control más bajo, pero no le importa mantener la máquina virtual en buen estado y IIS, porque Azure lo hace por usted.
  • Los roles web le dan más control (administrador de tráfico, escritorio remoto), pero es posible que tenga más administración de su lado, lo que significa que puede romper algo a través del escritorio remoto, por ejemplo.
  • Las máquinas virtuales le dan el control total de la máquina virtual, por lo que requieren los mayores esfuerzos de administración.

No hay una mejor opción, ya que depende del nivel de control que necesita, las funciones que necesita y lo que desea dejar para mantener las cosas de Azure. Y es gran tema ..

Mire estos artículos para obtener más información y hacer una elección más informada:

Se reduce a un intercambio entre la facilidad de uso y las capacidades.


Un rol web es una máquina virtual que aloja múltiples sitios web.


EDITAR 2014: Para lo que vale, gran parte de la información en esta respuesta ya no es correcta, vea los comentarios.

Agregue más a la respuesta de @David:

Con los sitios web de Windows Azure, no tiene control sobre IIS o el servidor web porque está usando una porción de recursos junto con cientos de otros sitios web en la misma máquina, está compartiendo recursos como cualquier otro, por lo que no hay control sobre IIS.

La gran diferencia entre un sitio web compartido y un rol web de Azure es que un sitio web se considera vinculado al proceso, mientras que los roles están vinculados a máquinas virtuales.

Los sitios web se almacenan en un contenido compartido al que se puede acceder desde todos los "servidores web" de la granja, por lo que no hay replicación ni nada de eso.

Los sitios web de Windows Azure no pueden tener su propio nombre de host, sino que deben usar websitename .azurewebsites.net y usted puede usar la configuración de CNAME en su proveedor de DNS para enrutar su solicitud exactamente igual que la función anterior de Windows Azure solo cuando se ejecutan en modo reservado . La configuración de CNAME no es compatible con sitios web compartidos.


Los sitios web de Azure le permiten crear sitios web altamente escalables rápidamente en Azure. Puede usar el Portal de Azure o las herramientas de la línea de comandos para configurar un sitio web con idiomas populares como .NET, PHP, Node.js y Python. Los marcos soportados ya están implementados y no requieren más pasos de instalación. La galería de sitios web de Azure contiene muchas aplicaciones de terceros, como Drupal y WordPress, así como marcos de desarrollo como Django y CakePHP. Después de crear un sitio, puede migrar un sitio web existente o construir un sitio web completamente nuevo. Los sitios web eliminan la necesidad de administrar el hardware físico y también proporcionan varias opciones de escalado. Puede pasar de un modelo de múltiples inquilinos compartido a un modo estándar donde las máquinas dedicadas atienden el tráfico entrante. Los sitios web también le permiten integrarse con otros servicios de Azure, como SQL Database, Service Bus y Storage. Usando la vista previa del SDK de Azure WebJobs, puede agregar procesamiento en segundo plano. En resumen, los sitios web de Azure facilitan el enfoque en el desarrollo de aplicaciones al admitir una amplia gama de idiomas, aplicaciones de código abierto y metodologías de implementación (FTP, Git, Web Deploy o TFS). Si no tiene requisitos especializados que requieran servicios en la nube o máquinas virtuales, lo más probable es que un sitio web de Azure sea la mejor opción.

Los Servicios en la nube le permiten crear aplicaciones web escalables y de alta disponibilidad en un entorno de Plataforma como Servicio (PaaS) rico. A diferencia de los sitios web, un servicio en la nube se crea primero en un entorno de desarrollo, como Visual Studio, antes de implementarse en Azure. Los marcos, como PHP, requieren pasos de implementación personalizados o tareas que instalan el marco en el inicio del rol. La principal ventaja de los servicios en la nube es la capacidad de soportar arquitecturas de varios niveles más complejas. Un solo servicio en la nube podría consistir en un rol web frontend y uno o más roles de trabajador. Cada nivel puede ser escalado independientemente. También hay un mayor nivel de control sobre la infraestructura de su aplicación web. Por ejemplo, puede usar el escritorio remoto en las máquinas que ejecutan las instancias de rol. También puede crear secuencias de comandos de IIS y cambios de configuración de máquina más avanzados que se ejecutan al inicio de la función, incluidas las tareas que requieren el control del administrador.

Las máquinas virtuales le permiten ejecutar aplicaciones web en máquinas virtuales en Azure. Esta capacidad también se conoce como Infraestructura como servicio (IaaS). Cree nuevas máquinas Windows Server o Linux a través del portal, o cargue una imagen de máquina virtual existente. Las máquinas virtuales le brindan el mayor control sobre el sistema operativo, la configuración y el software y los servicios instalados. Esta es una buena opción para migrar rápidamente aplicaciones web complejas locales a la nube, ya que las máquinas se pueden mover como un todo. Con las redes virtuales, también puede conectar estas máquinas virtuales a las redes corporativas locales. Al igual que con los Servicios en la nube, tiene acceso remoto a estas máquinas y la capacidad de realizar cambios de configuración en el nivel administrativo. Sin embargo, a diferencia de los sitios web y los servicios en la nube, debe administrar las imágenes de su máquina virtual y la arquitectura de la aplicación completamente a nivel de infraestructura. Un ejemplo básico es que tiene que aplicar sus propios parches al sistema operativo.

Consulte la comparación actualizada y completa en este enlace: http://azure.microsoft.com/en-us/documentation/articles/choose-web-site-cloud-service-vm/