Tengo dos servicios WCF alojados en un solo servicio de Windows en una máquina con Windows Server 2003. Si el servicio de Windows necesita acceder a cualquiera de los servicios de WCF (como cuando se produce un evento programado), utiliza uno de los cinco endpoints de canal con nombre expuestos (diferentes contratos de servicio). El servicio también expone los puntos finales HTTP MetadataExchange para cada uno de los dos servicios, y los puntos finales net.tcp para los consumidores externos al servidor.No se escuchaba ningún punto final en net.pipe: // localhost/
Por lo general, las cosas funcionan muy bien, pero de vez en cuando me sale un mensaje de error que se ve algo como esto:
System.ServiceModel.EndpointNotFoundException: No hubo extremo de escucha en net.pipe: // localhost/IPDailyProcessing que podría aceptar el mensaje. Esto a menudo es causado por una dirección incorrecta o acción SOAP. Vea InnerException, si está presente, para más detalles. ---> System.IO.PipeException: el extremo del conducto 'net.pipe: // localhost/IPDailyProcessing' no se pudo encontrar en su máquina local. --- Final de seguimiento de pila de excepción --- servidor de seguimiento de la pila: en System.ServiceModel.Channels.PipeConnectionInitiator.GetPipeName (Uri uri) en System.ServiceModel.Channels.NamedPipeConnectionPoolRegistry.NamedPipeConnectionPool.GetPoolKey (dirección EndpointAddress , Uri vía) en System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection (TimeSpan tiempo de espera) en System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen (TimeSpan tiempo de espera) en System.ServiceModel.Channels.CommunicationObject.Open (TimeSpan tiempo de espera) en System.ServiceModel.Channels.ServiceChannel.OnOpen (TimeSpan timeout) en System.ServiceModel.Channels.CommunicationObject.Open (TimeSpan timeout) en System.ServiceModel.Channels.ServiceChannel.CallOpenOnce.System.ServiceModel.Channels.ServiceChannel.ICallOnce.Call (canal ServiceChannel, TimeSpan timeout) en System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce (TimeSpan timeout, CallOnceManager cascade) en System.ServiceModel.Channels.ServiceChannel.EnsureOpened (TimeSpan timeout) en System.ServiceModel.Channels.ServiceChannel.Call (String action, Boolean oneway, ProxyOperationRuntime operation, Object [] ins, Object [] outs, TimeSpan timeout) en System.ServiceModel.Channels.ServiceChannel.Call (String action, Boolean oneway, ProxyOperationRuntime operation, Object [] ins, Object [] outs) en System.ServiceModel.Channels.ServiceChannelProxy.InvokeService (IMethodCallMessage methodCall, ProxyOperationRuntime operation) en System.ServiceModel.Channels.ServiceChannelProxy.Invoke (mensaje de iMessage)
Esto no sucede de forma fiable, que es exasperante porque no puedo repetirlo cuando quiero. En mi servicio de Windows también tengo algunos eventos programados y algunos oyentes de archivos, pero estos son eventos bastante infrecuentes. ¿Alguien tiene alguna idea de por qué podría encontrar un problema? Cualquier ayuda sería muy apreciada.
Estoy luchando con el mismo problema, ¿alguna vez encontró una solución? Periódicamente este error ocurre. En algunos casos, la excepción es 'El mensaje no pudo enviarse porque el servicio en la dirección del punto final' net.pipe: // localhost/d927b6b5-5994-4bd2-b92a-2fbdbae18d28/SendEmailWorkflow/Creation 'no está disponible para el protocolo del dirección'. El servicio no está alojado en IIS, por lo que se descarta el reinicio de IIS/AppPool. – Rohland