Pregunta

Tenemos un servicio WCF existente que hace uso de wsDualHttpBinding para habilitar las devoluciones de llamada al cliente. Estoy considerando trasladarlo a netTcpBinding para un mejor rendimiento, pero desconfío de alejarme del servicio alojado por IIS (una zona de confort que disfrutamos actualmente) para tener nuestro propio servicio de Windows para alojarlo. Esperaba que aún pudiéramos alojar esto en IIS 7, pero Win2K8 no será una realidad para nosotros durante algún tiempo.

¿Qué cosas debo tener en cuenta al crear nuestro propio servicio de Windows para alojar nuestro servicio WCF? Cosas como la administración de por vida y la regulación de solicitudes son características que vienen gratis con el alojamiento de IIS, por lo que también me gustaría saber cómo podemos alojar nuestro servicio de manera efectiva sin la conveniencia de que IIS haga el trabajo duro por nosotros. ¡Gracias! :)

¿Fue útil?

Solución

Entonces, como no puedes alojar usando WAS, hay un par de cosas que debes hacer.

  • Si el servicio falla, no se reinicia de forma predeterminada (aunque puede cambiarlo en las propiedades del servicio)
  • IIS reciclará el grupo de aplicaciones si se cuelga o crece demasiado; debe hacerlo usted mismo si desea el mismo tipo de confiabilidad.
  • Debe crear una cuenta para que se ejecute el servicio o utilizar uno de los servicios predeterminados. Vuelva a salir de la tentación de ejecutar el servicio como SISTEMA o bajo una cuenta de administrador; si desea utilizar una cuenta integrada, use el SERVICIO DE RED.
  • Se vuelve más difícil de depurar in situ.
  • Considere usar un registrador de errores como log4net

Habiendo dicho que implementé una combinación de servicios WCF / Windows para un cliente hace 9 meses; se usa mucho y no ha muerto una vez.

Puede solicitud de acelerador en un servicio de Windows, es parte de la configuración de WCF. Tenga en cuenta que los valores predeterminados son muy bajos, es probable que tenga que aumentarlos.

Otros consejos

Alojamiento en una aplicación de servicio de Windows ( http://msdn.microsoft. com / en-us / library / ms734781.aspx ) es un buen comienzo.

Si puede alojar su servicio en Vista, también puede beneficiarse del Servicio de activación de procesos de Windows (WAS). WAS es una generalización de la activación del proceso IIS, que se puede usar para activar procesos en puntos finales no HTTP (TCP, Named Pipe, MSMQ). Para obtener más información sobre WCF alojado en WAS, lea http://msdn.microsoft. com / es-us / library / ms733109.aspx . Para aprender cómo instalar y configurar WAS, lea http://msdn.microsoft. com / en-us / library / ms731053.aspx .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top