Attualmente disponiamo di un'applicazione .NET 4 costituita da Windows Service in esecuzione in background e client locali o remoti (solo 1-3 in genere).Scelta migliore per server self hosting robusto: WCF contro ASP.NET Web Api
I client dispongono di una GUI WPF e necessitano di alcuni dati dal servizio Windows. Pertanto, utilizziamo WCF con l'associazione NamedPipe per un client locale e l'associazione NetTcp per i client remoti. Funziona, ma spesso abbiamo problemi con endpoint non raggiungibili (canale guasto o non trovato ecc.). Proviamo già a ricostruire le connessioni malfunzionanti, ma sembra essere piuttosto fragile ...
Ora immettere Web Api: sembra uno stack basato su HTTP potrebbe essere più robusto (nessun canale, nessun punto finale, può essere auto-ospitato in anche il servizio Windows). Sembra che non ci siano problemi con i canali danneggiati perché ogni richiesta viene gestita individualmente. Quindi se qualcosa fallisce, basta ripetere la richiesta. (E abbiamo esperienza con ASP.NET MVC da altre app, quindi questo non è nuovo per noi).
Ora stiamo pensando a quale potrebbe essere la nostra migliore scommessa. È meglio "indurire" il nostro servizio WCF esistente (un'interfaccia di servizio con circa 15 operazioni) o spostare l'interfaccia su Web Api ed eseguirla come richieste HTTP (con dati JSON)? Le prestazioni non sono il nostro problema principale qui ...
Qualche idea? Hartmut
Ti dispiacerebbe aggiornarci se ancora WebAPI con hosting autonomo è una scelta migliore rispetto a WCF ospitato autonomamente. –