Estoy alojando un servicio WCF en IIS7 en Windows Server 08, sp2. El servicio se aloja como su propio sitio web y se expone a través de un punto final NET.TCP. El servicio funciona perfectamente hasta que se emita un comando restart/iisreset.restart/iisreset ¿Deshabilita el protocolo NET.TCP?
Después de reiniciar o iisreset, cuando hago cualquier llamada de servicio, recibo el siguiente error: 'System.ServiceModel.EndpointNotFoundException: El mensaje no pudo ser enviado porque el servicio en la dirección de punto final' net.tcp: // [sitio web]/[nombre_servicio] .svc 'no está disponible para el protocolo de la dirección ..'
El registro de eventos del servidor muestra el siguiente error: 'Se produjo un error al intentar leer y crear una instancia del ProcessHandlerType configurado. Excepción: System.ArgumentException Mensaje: Id. De protocolo desconocido 'NET.TCP'. StackTrace: en System.Web.Hosting.ProcessHost.StartProcessProtocolListenerChannel (String protocolId, IListenerChannelCallback listenerChannelCallback) '
Pregunta: ¿Cómo puedo solucionar esto? ¿Por qué el protocolo NET.TCP está deshabilitado después de iisreset? ¿Es un error? ¿Me falta algo de configuración?
detalles sobre la configuración de IIS: - Server 08 y 08 R2 - Fijaciones: http, net.tcp (808: *) - EnabledProtols: http, net.tcp. - La identidad de la appPool del sitio se establece en un usuario específico.
Código de la muestra disponible aquí: http://drop.io/wcfTcpSampleService
Gracias
Hacky (inaceptable) Solución: Lo puedo hacer funcionar de nuevo si (1) Elimino NET.TCP de EnabledProtocols (2) del sitio iisreset (3) agrego NET.TCP de nuevo a los protocolos EnabledProtocols del sitio. El sitio continúa funcionando hasta que iisreset se emita de nuevo. IIS está haciendo algo cuando agrego NET.TCP a EnabledProtocols que no está sucediendo cuando IIS se inicia cuando NET.TCP ya se ha agregado. –
Cuando esto sucede, ¿cuál es el estado del servicio Net.Tcp Listner? ¿En qué se configura el tipo de inicio del servicio Net.Tcp Listner? ¿Hay algo que indique en los registros de eventos del Sistema o la Aplicación? –
El adaptador Net.Tcp Listener se inicia (tipo de inicio: Automático). El error en el registro de eventos es 'Se produjo un error al intentar leer y crear una instancia del ProcessHandlerType configurado. Excepción: System.ArgumentException Mensaje: Id. De protocolo desconocido 'NET.TCp'. StackTrace: en System.Web.Hosting.ProcessHost.StartProcessProtocolListenerChannel (String protocolId, IListenerChannelCallback listenerChannelCallback) ' –