Microsoft ha da poco rilasciato la versione finale di ASP.NET Core 3, il nuovo framework multi-piattaforma che consente di sviluppare ed ospitare codice sia su Windows che su Linux. ASP.NET Core può essere usato senza alcun problema sui pacchetti di hosting di VaiSulWeb e non richiede setup speciali o macchine dedicate.
Usare ASP.NET Core con il cloud hosting
Il servizio di Cloud Hosting è ideale per applicazioni che possano avere la necessità di una scalabilità elevata, grazie alla compatibilità sia con le istanze condivise che dedicate. E’ possibile iniziare con una singola istanza e passare poi ad un numero maggiore per incrementare le prestazioni della propria applicazione. Per la pubblicazione delle applicazioni ASP.NET Core sul servizio di cloud hosting è necessario generare una versione indipendente dal framework. Gli ambienti infatti non contengono per default versioni di ASP.NET Core in modo che sia possibile personalizzare il più possibile il proprio ambiente operativo.
La pubblicazione sul servizio di Cloud Hosting consente di abilitare la Tiered Compilcation (TC) e di usare le Ready-to-Run (R2R) image: entrambe consentono un avvio più veloce delle applicazioni ASP.NET Core.
Quando si è pronti per la pubblicazione della propria applicazione, procedere come segue:
- effettuare le modifiche al file di progetto per abilitare tiered compilation (TC) e le immagini Ready-To-Run (R2R) modificando il file .csproj:
<PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework> <TieredCompilationQuickJit>true</TieredCompilationQuickJit> <PublishReadyToRun>true</PublishReadyToRun> </PropertyGroup>
- effettuare la pubblicazione selezionando le impostazioni per la pubblicazione indipendente dal framework e per l’architettura win-x64
Dopo il completamento della pubblicazione, la cartella di destinazione conterrà tutti i file che è necessario inserire nella cartella “wwwroot” del proprio sito Web. Si noti che all’interno della cartella è presente un’altra “wwwroot”, come configurazione predefinita dell’applicazione. Le due cartelle, quella di hosting e quella dell’applicazione hanno lo stesso nome ma la cartella “wwwroot” dell’applicazione deve comparire all’interno della cartella “wwwroot” sul server.
Prima della pubblicazione è necessario aprire il file web.config dell’applicazione ed effettuare una modifica. Localizzare le righe:
<location path="." inheritInChildApplications="false"> <system.webServer> <handlers> <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" /> </handlers> <aspNetCore processPath=".\NETDemo.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" /> </system.webServer> </location>
e modificare la riga
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
in
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
e modificare la riga
<aspNetCore processPath=".\NETDemo.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
in
<aspNetCore processPath=".\NETDemo.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
A questo punto è possibile pubblicare l’applicazione come qualsiasi altro sito Web. Con questa configurazione si ottengono le prestazioni più elevate possibile.
Usare ASP.NET Core 3 con il servizio VSW Linux .NET
Il servizio VSW Linux .NET è pensato per i clienti che desiderino pubblicare velocemente applicazioni o siti Web che non richiedono alta scalabilità. Per semplificare la pubblicazione, il servizio supporta applicazioni in configurazione dipendente dal framework che consentono di trasferire solo i file necessari per l’esecuzione. Questo però non consente di personalizzare la versione di .NET Core che si sta utilizzando.
Per la pubblicazione è sufficiente configurare l’esportazione come dipendente dal framework e il runtime come “Portable”. Non ci sono altre modifiche che è necessario effettuare. I file vanno posizionati nella cartella public_aspnet invece che nella public_html.
Gli account VSW Linux .NET supportano i framework .NET Core 2.1, 2.2 e la nuova 3.0.
Conclusioni
Il supporto per le applicazioni .NET Core 3 è disponibile sia su Windows che su Linux, con dei servizi diversi in base alle necessità di scalabilità del proprio progetto.
2
Leave a Comment