2012-01-03 10 views
9

Me gustaría saber si es posible escribir una aplicación de consola a puerto en Windows Azure.Aplicación de consola de alojamiento en Azure o Amazon, ¿es posible?

La aplicación de la consola no tendría una interfaz, simplemente haría su trabajo sin informar lo que le está haciendo al usuario. En este caso, sería una aplicación de socket.

No quiero que sea un sitio web. No sería de ninguna adición al proyecto.

EDIT: Gracias a todos por responder a mí tan rápido. Ahora tengo una respuesta a lo que he estado buscando. Ahora mi pregunta es: ¿cómo se llamaría en Amazon? Es la función del trabajador en Azure ... ahora sé que gracias a todos ustedes

Respuesta

0

No puede alojar directamente una aplicación de consola en Azure o en cualquier otra nube. Como dijo Ghyath, deberás usar el rol de trabajador en caso de Azure.

Mire this muestra que demuestra cómo puede convertir una aplicación de consola en una función de trabajador en Windows Azure. Ver Tarea1.

+0

y ¿cómo se llamaría en Amazon? – morcillo

+0

No estoy seguro de cómo funciona Amazon lo siento. No habrá ningún concepto de rol de trabajador. Creo que tendrá que alojar esa pieza de código en un servicio web en el caso de Amazon –

+1

No está limitado a Rol de trabajador: puede ejecutar fácilmente una aplicación de consola en un rol web, y no hay nada que convertir, solo necesita para escribir código de andamio que configura el entorno de manera apropiada. –

1

Puede usar una función de trabajador en Windows Azure. La salida se puede escribir en cierto monitors.

1

No puede alojar una aplicación de consola, hay algo llamado Rol de trabajador que puede usarlo.

+1

Sí, tienes toda la razón. Buena respuesta. – Boomer

+1

En realidad, una función de trabajador no es como un servicio de Windows. En realidad, es una máquina virtual Windows Server 2008 R2 o SP2. Lo mismo aplica para Web Role, excepto Web Role también activa IIS. –

7

Puede ejecutar absolutamente una aplicación de consola en Windows Azure, ya sea Web o Worker Role (que son Windows Server 2012 o 2008 R2/SP2), y normalmente puede ejecutarlos sin modificaciones. Tendrá que:

  • Proporcione los binarios o el instalador para su aplicación de consola, junto con cualquier DLL de soporte adicional. Puede hacer que estos sean parte de su implementación o almacenarlos en Blob Storage y copiarlos localmente en el arranque de VM.
  • puntos finales Configurar entrada para TCP/HTTP/HTTPS puertos de la aplicación de la consola está escuchando
  • manija de salida stdout/stderr
  • configurar el almacenamiento local de archivos temporales/cache/etc que la aplicación de consola necesita
  • lanzamiento su aplicación de consola en OnStart() (el lugar preferido, que se llama antes de colocar su instancia de VM en el equilibrador de carga) o Run().

Debe pensar en cómo se ejecuta la aplicación de consola cuando hay varias instancias de máquina virtual. ¿Pueden ejecutarse dos instancias de tu aplicación de consola al mismo tiempo? De lo contrario, deberá configurar una comprobación de exclusión mutua antes de iniciar el ejecutable de su aplicación de consola.

Steve Marx recientemente blogged about running the Mongoose Web Server in Windows Azure (Mongoose es una aplicación de consola basada en C++). Todo el código está en el proyecto PackAndDeploy en github, por lo que puede ver cómo configuró.

EDITAR 7/27/2013 Esta respuesta está un poco anticuada. También puede ejecutar aplicaciones de consola en máquinas virtuales Windows o Linux. Y ahora tiene Windows Server 2012 como opción de sistema operativo para instancias de rol web/trabajador.

2

En Amazon no hay un "rol de trabajador" y una implementación super fácil relacionada. Simplemente puede implementar su aplicación de consola e iniciarla en su instancia de EC2 manualmente o mediante una tarea programada. Si su aplicación debe ejecutarse sin supervisión y sin un usuario conectado, debe confiar en un servicio de Windows implementado en AWS EC2.

Cuestiones relacionadas