2012-01-03 11 views
9

Mi piacerebbe sapere se è possibile scrivere un'applicazione console su porta su Windows Azure.Applicazione console di hosting su Azure o Amazon, è possibile?

L'applicazione della console non avrebbe un'interfaccia, avrebbe semplicemente fatto il suo lavoro senza informare ciò che sta facendo all'utente. In questo caso sarebbe un'applicazione socket.

Non voglio che sia un sito web. Non sarebbe di alcuna aggiunta al progetto.

EDIT: Grazie a tutti per rispondere a me così velocemente. Ora ho una risposta a quello che stavo cercando. Ora la mia qustion è: come si chiamerebbe in Amazon? È un ruolo di lavoro su Azure ... ora lo so grazie a tutti voi

risposta

0

Non è possibile ospitare direttamente un'app console in Azure o in qualsiasi altro cloud. Come ha detto Ghyath, dovrai utilizzare il ruolo di lavoratore in caso di Azure.

Dai uno sguardo al campione this che dimostra come è possibile convertire un'app Console in un ruolo di lavoro in Windows Azure. Vedi Task1.

+0

e quale sarebbe chiamato su Amazon ?? – morcillo

+0

Non sono sicuro di come Amazon scusa. Non ci sarà alcun ruolo del lavoratore come concetto. Penso che dovrai ospitare quel pezzo di codice in un servizio Web in caso di Amazon –

+1

Non sei limitato al ruolo di lavoratore: puoi eseguire facilmente un'app console in un ruolo Web e non c'è nulla da convertire - è sufficiente scrivere codice di ponteggio che imposta l'ambiente in modo appropriato. –

1

È possibile utilizzare un ruolo di lavoro in Windows Azure. L'output può essere scritto su determinati monitors.

1

Non è possibile ospitare un'applicazione della console, esiste qualcosa chiamato Role del ruolo che è possibile utilizzare.

+1

Sì, hai perfettamente ragione. Buona risposta. – Boomer

+1

In realtà un ruolo di lavoratore non è come un servizio di Windows. In realtà è una macchina virtuale Windows Server 2008 R2 o SP2. Lo stesso vale per il ruolo Web, tranne che il ruolo Web attiva IIS. –

7

È possibile eseguire un'applicazione console in Windows Azure, in un ruolo Web o di lavoro (entrambi Windows Server 2012 o 2008 R2/SP2) e in genere è possibile eseguirli non modificati. È necessario:

  • Fornire i binari o il programma di installazione per l'app della console, insieme a eventuali DLL di supporto aggiuntive. È possibile renderli parte della distribuzione o archiviarli in Blob Storage e copiarli localmente all'avvio della VM.
  • Endpoint Configura ingresso per il protocollo TCP/HTTP/HTTPS porte console applicazione è in ascolto
  • maniglia uscita output/error
  • configurare l'archiviazione locale per i file temporanei/ecc cache/che la console app ha bisogno
  • lancio l'app della console in OnStart() (la posizione preferita, che viene chiamata prima dell'istanza della VM che viene posizionata nel bilanciamento del carico) o Run().

È necessario pensare a come viene eseguita l'app della console quando ci sono più istanze VM. Possono essere eseguite contemporaneamente due istanze dell'app della console? In caso contrario, sarà necessario impostare un controllo mutex prima di avviare l'eseguibile dell'app della console.

Steve Marx recentemente blogged about running the Mongoose Web Server in Windows Azure (Mongoose è un'applicazione di console basata su C++). Tutto il codice si trova nel progetto PackAndDeploy su github, quindi puoi dare un'occhiata a come ha impostato le cose.

EDIT 27/07/2013 Questa risposta è un po 'datata. Puoi anche eseguire app console in macchine virtuali Windows o Linux. E ora hai Windows Server 2012 come scelta del sistema operativo per le istanze di ruolo web/worker.

2

Su Amazon non esiste un "ruolo di lavoratore" e una distribuzione super facile correlata. È possibile semplicemente distribuire l'applicazione della console e avviarla manualmente sull'istanza EC2 o tramite un'attività pianificata. Se l'app deve essere eseguita in modo automatico e senza un utente connesso, è necessario affidarsi a un servizio Windows distribuito su AWS EC2.

Problemi correlati