2016-01-29 16 views

risposta

2

Penso che la differenza principale è che Microsoft ASP.NET SignalR OWIN è un pacchetto più vecchio, perché dipende Microsoft.AspNet.SignalR.Core (>= 1.2.2). E Microsoft ASP.NET SignalR Self Host dipende da Microsoft.AspNet.SignalR.Core (>= 2.2.0). Questo è il motivo per cui userò il pacchetto Microsoft ASP.NET SignalR Self Host.

9

Microsoft ASP.NET SignalR Self Host utilizza ancora OWIN all'avvio. L'unica differenza è che il server Self Hosted SignalR non deve essere nidificato in un'applicazione Web ASP.NET ospitata in IIS. Può essere una semplice applicazione di console.

See MSDN for more info:

Motivi per non ospita in IIS includono:

  • Ambienti in cui IIS non è disponibile o desiderabile, come ad esempio una server farm esistente, senza IIS.
  • È necessario evitare il sovraccarico delle prestazioni di IIS.
  • La funzionalità SignalR deve essere aggiunta a un'applicazione esistente che viene eseguita in un servizio Windows, un ruolo di lavoro di Azure o un altro processo.
+0

Conosco i motivi per non aver ospitato in IIS. Ecco perché voglio ospitare automaticamente SignalR. Ma entrambi i pacchetti collegati sono per self host. Non capisco le differenze di questi due. Entrambi stanno usando OWIN. – CPA

+1

È perché la DLL di Self Host include 'HttpListener', che è necessario per l'ascolto sulla porta 80, e poiché questo è il lavoro di IIS in primo luogo, questa classe è necessaria per una connessione da effettuare con SignalR perché non si sta usando IIS. –

+0

Microsoft ha segmentato SignalR in più pacchetti NuGet in modo da poter utilizzare il pacchetto corretto in base alle proprie esigenze, in modo da ridurre le dipendenze non necessarie –