2008-11-04 16 views
5

Al alojar un servicio WCF en IIS, tiene la opción de configurar manualmente el punto final o declarativamente mediante WebServiceHostFactory. No parece ser tan difícil crear manualmente el punto final, así que pensé que podría preguntar.Uso de WebServiceHostFactory Pros y Contras

  • ¿Cuáles son los beneficios de usar WebServiceHostFactory?
  • ¿Hay alguna implicancia en el rendimiento para la creación dinámica de los puntos finales?

Respuesta

3

Puede aclarar: lo preguntas específicamente sobre Web ServiceHostFactory (emph: "Web")? ¿O solo la diferencia entre el alojamiento de IIS vs el inicio de su propio servidor a través del código?

WebServiceHostFactory es nuevo en .NET 3.5 y es compatible con algunas de las novedades de AJAX/JSON.

En realidad, dentro de IIS (utilizando .svc), ya está utilizando un ServiceHostFactory, simplemente el predeterminado entregado con WCF. Puede escribir su propia fábrica si lo desea, y lo he hecho en el pasado para crear una fábrica que solo escuche en https (tuve un problema en una granja que hospedaba varios sitios, donde no pudo identificar el correcto sitio para http, pero https estaba bien, así que deshabilité completamente http a través de la fábrica).

rendimiento no debería ser diferente, siempre y cuando no se vuelven locos y escuchar en 200 puntos finales ...

En general, la creación manual del servidor se utiliza cuando se está recibiendo en el servidor (por ejemplo) un servicio de Windows. IIS está bien para algunas cosas, pero las agrupaciones de aplicaciones se reciclan, por lo que no son ideales para un servidor que necesita conservar el estado de larga duración. IIS tiene la ventaja de ser mucho más fácil de configurar, especialmente con seguridad (SSL, etc.) y compresión.

+0

Sí, estoy preguntando específicamente sobre el host del servicio WEB – jdiaz

0

Definitivamente no soy un experto (aún), pero los contras que vienen a la mente son:

  • que sólo puede tener una autenticación método a la vez (es decir, no tanto Windows y anónima.) CF . WebServiceHostFactory and IIS authentication
  • gestión de errores es difícil de hacer de una manera genérica (sin Application_OnError, por lo que tendrá que configurar sus puntos finales manualmente después de todo)

Pro:

  • sin esfuerzo configuración de servicios REST desde cero.