Opzioni di hosting ASP.NET (VB)

di Scott Mitchell

Scarica il PDF

ASP.NET le applicazioni Web sono in genere progettate, create e testate in un ambiente di sviluppo locale e devono essere distribuite in un ambiente di produzione una volta che è pronto per la versione. Questa esercitazione offre una panoramica generale del processo di distribuzione e funge da introduzione a questa serie di esercitazioni.

Introduzione

Le applicazioni Web sono in genere progettate, create e testate in un ambiente di sviluppo accessibile solo ai programmatori che lavorano nel sito. Dopo che l'applicazione è pronta per essere rilasciata, viene spostata in un ambiente di produzione in cui il sito può essere accessibile da chiunque su Internet. Questo processo di distribuzione presenta una serie di problemi:

  • Un ambiente di produzione deve essere configurato correttamente prima della distribuzione di un'applicazione ASP.NET; inoltre, l'ambiente di produzione deve essere aggiornato con le patch di sicurezza più recenti.
  • Il set corretto di file di markup, file di codice e file di supporto deve essere copiato dall'ambiente di sviluppo all'ambiente di produzione. Per le applicazioni basate sui dati, ciò potrebbe richiedere anche la copia dello schema del database e/o dei dati.
  • Potrebbero esserci differenze di configurazione tra i due ambienti. La stringa di connessione del database o il server di posta elettronica usati nell'ambiente di sviluppo saranno probabilmente diversi dall'ambiente di produzione. Altro, il comportamento dell'applicazione può dipendere dall'ambiente. Ad esempio, quando si verifica un errore nello sviluppo, è possibile visualizzare i dettagli dell'errore sullo schermo, ma quando si verifica un errore nell'ambiente di produzione, deve essere visualizzata una pagina di errore descrittiva e i dettagli dell'errore vengono visualizzati tramite posta elettronica agli sviluppatori.

Per ovviare alla prima sfida, configurare e mantenere un ambiente di produzione, molti utenti e aziende eseguono l'esternalizzamento degli ambienti di produzione ai provider di hosting Web. Un provider di hosting Web è un'azienda che gestisce l'ambiente di produzione per conto dell'utente. Ci sono innumerevoli provider di host Web, ognuno con prezzi e livelli di servizio diversi; vedere la sezione "Ricerca di un provider host Web" per suggerimenti sull'individuazione di tale provider di servizi.

Si tratta della prima in una serie di esercitazioni che esaminano i passaggi coinvolti nella distribuzione di un'applicazione Web ASP.NET in un ambiente di produzione gestito da un provider host Web. Nel corso di queste esercitazioni verranno esaminate:

  • Quali file devono essere distribuiti nel provider host Web.
  • Strumenti per semplificare il processo di distribuzione.
  • Come distribuire un database.
  • Suggerimenti per la distribuzione di un database che usa il provider di appartenenze e ruoli basati su SQL, oltre a modi per simulare lo strumento di amministrazione del sito Web in un ambiente di produzione.
  • Strategie per l'aggiornamento uniforme del database in produzione con modifiche apportate durante lo sviluppo.
  • Tecniche per la registrazione degli errori che si verificano nell'ambiente di produzione e modi per notificare agli sviluppatori quando si verifica un errore.

Queste esercitazioni sono orientate per essere concise e fornire istruzioni dettagliate con un sacco di schermate per illustrare visivamente il processo. Questa esercitazione introduttiva offre una panoramica del processo di distribuzione ASP.NET e consigli su come trovare un provider di hosting Web. È possibile iniziare subito.

Panoramica del processo di distribuzione ASP.NET

In breve, la distribuzione di un'applicazione ASP.NET prevede i tre passaggi seguenti:

  1. Configurare l'applicazione Web, il server Web e il database nell'ambiente di produzione.
  2. Sincronizzare le pagine ASP.NET, i file di codice, gli assembly nella Bin cartella e i file di supporto correlati a HTML, ad esempio file CSS e JavaScript.
  3. Sincronizzare lo schema del database e/o i dati.

Le informazioni di configurazione per un'applicazione Web si trovano in genere nel Web.config file e includono stringhe di connessione al database, criteri di gestione degli errori, regole di riscrittura degli URL e informazioni sul server di posta elettronica. Spesso queste informazioni sono diverse per un'applicazione in fase di sviluppo rispetto alla stessa applicazione nell'ambiente di produzione. Ad esempio, quando si sviluppa un'applicazione è consigliabile usare un database di sviluppo in modo da non eseguire test sul database di produzione. Di conseguenza, le stringhe di connessione del database differiscono in genere tra applicazioni di sviluppo e produzione. A causa di queste differenze, una parte della distribuzione comporta modifiche alle informazioni di configurazione dell'applicazione Web.

Oltre alle modifiche alla configurazione dell'applicazione Web, il passaggio 1 può comportare anche la configurazione per il server Web e il database. Ad esempio, se una pagina ASP.NET crea o elimina file da una directory nel server Web, il server Web deve essere configurato per consentire queste modifiche al file system. Analogamente, è possibile che siano presenti impostazioni di autorizzazione o autenticazione che devono essere effettuate nel database.

Il passaggio 2 prevede la sincronizzazione del set di pagine ASP.NET essenziali e i file di supporto tra gli ambienti di sviluppo e produzione. Il set specifico di file ASP.NET correlati che devono essere sincronizzati tra i due ambienti dipende dal tipo di progetto creato in Visual Studio ed è la discussione nell'esercitazione successiva , determinare quali file devono essere distribuiti. La terza e quarta esercitazione : distribuzione del sito tramite FTPe distribuzione del sito tramite Visual Studio , esaminare diversi strumenti e tecniche per la sincronizzazione di questi file.

Quando si creano applicazioni basate sui dati, in genere vengono usati due database: uno per lo sviluppo e uno in produzione. Durante lo sviluppo, lo schema del database di sviluppo può essere modificato in modo da includere nuove tabelle, colonne, stored procedure e trigger oppure essere modificati per rimuovere o rinominare oggetti di database esistenti. Tra il momento in cui vengono apportate queste modifiche e l'ora in cui l'applicazione viene distribuita in produzione, lo sviluppo e i database di produzione non vengono sincronizzati. Questo asincronia deve essere risolto durante il processo di distribuzione. Queste sfide verranno esaminate nelle esercitazioni future.

Ricerca di un provider host Web

ASP.NET applicazioni possono essere distribuite in qualsiasi server Web con .NET Framework e Internet Information Services (IIS) installato. È possibile ospitare un sito dal proprio computer personale, presupponendo che si abbia una connessione a banda larga a Internet e il sapere come configurare il router per consentire le richieste Web in ingresso. È anche possibile ospitare un sito da un computer in una intranet, come molte aziende fanno. L'attenzione di queste esercitazioni, tuttavia, ospita il tuo sito Web con un provider host Web.

Nota

IIS è il server Web di livello aziendale di Microsoft. Viene fornito con le edizioni non Home di Windows, ad esempio Windows Server 2008 e alcune edizioni di Windows Vista. Non è necessario installare IIS per gestire le applicazioni ASP.NET in un ambiente di sviluppo, poiché Visual Studio include il server Web di sviluppo ASP.NET. Tuttavia, il server Web di sviluppo ASP.NET accetta solo connessioni locali e pertanto non può essere usato in un ambiente di produzione.

Prima di poter distribuire il sito in un provider host Web, è prima necessario decidere con quale azienda fare business. Ci sono innumerevoli aziende di hosting Web nel marketplace; una ricerca "società di hosting Web" restituisce più di cinque milioni di risultati. Come trovi quello giusto per te? Il motore di ricerca preferito è un buon luogo di partenza, come sono siti Web come TopHosts e HostCritique, che confrontano e contrastano vari servizi di hosting. Mi consiglio anche di chiedere ai colleghi e ai colleghi di lavorare per eventuali raccomandazioni; è anche possibile chiedere consigli al Forum aperto di hosting qui all'ASP.NET Forum.

Le aziende di hosting Web offrono in genere piani di hosting condivisi e piani di hosting dedicati. Con l'hosting condiviso di un singolo server Web ospita decine se non centinaia di siti Web diversi. Con l'hosting dedicato si esegue il lease di un computer dall'azienda che serve il sito e il sito da soli. Un piano di hosting condiviso può includere il supporto per le pagine di ASP.NET, la possibilità di usare i database di Microsoft Access, 5 GB di spazio su disco e 100 GB di traffico di larghezza di banda mensile per $9,95 al mese. Un altro piano di hosting condiviso potrebbe includere il supporto per le pagine ASP.NET, l'accesso al server di database microsoft SQL Server 2008, 10 GB di spazio su disco e 250 GB di traffico di larghezza di banda mensile per $19,95 al mese. I piani di hosting dedicati sono in genere molto più costosi, costando diversi centinaia di dollari al mese, ma offrono prestazioni migliori e più controllo rispetto alle opzioni di hosting condivise. Il piano scelto dipende dal budget, dalla quantità di traffico ricevuta dal sito Web e dalle funzionalità previste.

Due considerazioni importanti quando si sceglie un provider host Web sono il servizio clienti e la qualità del servizio. Se si ha una domanda o un problema di configurazione, quanto tempo richiede l'invio del problema al supporto tecnico dell'host Web fino a quando non si riceve una risposta? Come sono affidabili i servizi dell'azienda? Hanno spesso interruzioni del database? Quanto spesso il server di posta elettronica è offline? È sempre possibile chiedere a un'azienda di fornire informazioni dettagliate sul tempo di attività e chiedere informazioni sui propri criteri di servizio clienti, ma un modo più sicuro è quello di richiedere il feedback dei clienti correnti e passati, che è possibile eseguire tramite forum online, newsgroup e listserv di posta elettronica.

Nota

Alcune aziende di hosting Web si concentrano sul proprio business su uno stack di tecnologie specifico, ad esempio .NET o LAMP (L inux, A pache, M ySQL e P HP), quindi assicurarsi che l'azienda seleziona ospita ASP.NET applicazioni. Verificare inoltre che supportino la versione di ASP.NET che si usa per compilare l'applicazione. E se si sta creando un'applicazione basata sui dati, assicurarsi che l'host Web offre lo stesso server di database e la stessa versione in uso.

Riepilogo

ASP.NET le applicazioni Web sono in genere progettate, create e testate in un ambiente di sviluppo locale. Dopo che una versione è pronta per la versione, viene spostata in un ambiente di produzione. Anche se è possibile ospitare ASP.NET siti Web nel computer personale o nei server all'interno dell'azienda, molte aziende e persone scelgono di esternalizzare il proprio hosting a un provider host Web.

Questa serie di esercitazioni esamina i passaggi per la distribuzione di un'applicazione ASP.NET in un provider host Web, esplorando le sfide comuni. Questa esercitazione offre una panoramica generale del processo di distribuzione ASP.NET e ha fornito suggerimenti per trovare un provider host Web appropriato. L'esercitazione successiva illustra quali file correlati ASP.NET devono essere copiati nell'ambiente di produzione durante la distribuzione del sito Web.

Programmazione felice!

Grazie speciali a...

Questa serie di esercitazioni è stata esaminata da molti revisori utili. Il revisore principale per questa esercitazione era Teresa Murphy. Interessati a esaminare i prossimi articoli MSDN? In tal caso, lasciami una riga in mitchell@4GuysFromRolla.com.