Actualmente tenemos una aplicación .NET 4 que consiste en Windows Service ejecutándose en segundo plano y clientes locales o remotos (solo 1-3 normalmente).La mejor opción para un servidor robusto de alojamiento propio: WCF frente a ASP.NET Web Api
Los clientes tienen una GUI de WPF y necesitan algunos datos del servicio de Windows. Por lo tanto, usamos WCF con el enlace NamedPipe para un cliente local y el enlace NetTcp para clientes remotos. Esto funciona, pero a menudo tenemos problemas con puntos finales que no son alcanzables (canal con fallas o no encontrado, etc.). Ya intentamos reconstruir las conexiones con errores, pero parece ser bastante frágil ...
Ahora ingrese la API web: parece que una pila basada en HTTP podría ser más robusta (sin canales, sin puntos finales, puede ser alojada automáticamente en servicio de ventanas también). Parece que no hay problemas con los canales rotos porque cada solicitud se maneja individualmente. Entonces, si algo falla, simplemente repite la solicitud. (Y tenemos experiencia con ASP.NET MVC de otras aplicaciones, por lo que no es nuevo para nosotros).
Ahora estamos pensando cuál podría ser nuestra mejor opción. ¿Es mejor "endurecer" nuestro servicio WCF existente (una interfaz de servicio con aproximadamente 15 operaciones) o mover la interfaz a la API web y ejecutarla como solicitudes HTTP (con datos JSON)? El rendimiento no es nuestro principal problema aquí ...
¿Alguna idea? Hartmut
¿Te importaría actualizarnos si todavía la WebAPI autohospedada es una mejor opción que la WCF autohospedada? –