WCF - 无法分派消息,因为端点地址处的服务...对于地址协议不可用

时间:2011-09-12 19:56:09

标签: wcf

好的,我可以发泄吗?我对此非常厌倦。我大部分时间都在工作,而WCF服务工作得很好。下次我运行我的应用程序并进行WCF调用时,bam! tcp套接字不再可用。我已经搜索了高低,以解决这个问题,并没有真正的解决方案。我能找到的唯一解决方案是重启机器,这是一个巨大的时间浪费和负担。重新启动WPA服务,net.tcp服务,IIS等不会做任何事情。注销并重新开启并不能解决问题。只有重新启动才能解决此问题。我什么都不做,除了再次运行我的应用程序进行WCF调用,这个垃圾发生了。任何事情都没有配置问题。几个月来我一直在处理这个问题,并且找不到任何具体原因或解决方案。它打开或关闭我的防火墙,无关紧要。

任何人的见解?我认为WCF / net.tcp层确实存在导致此问题的错误。我甚至在生产2008 R2服务器上得到它时,有时会进行Web.config更改,所以我学会了在更改之前停止IIS,WPA,net.tcp等服务然后重新启动它们。多么痛苦。

我正在使用.NET4,VS2010,所有服务包等应用。一切都是最新的。

对不起,请原谅我......

任何人都可以帮忙吗?

6 个答案:

答案 0 :(得分:24)

  1. 打开命令提示符
  2. 导航至c:\ windows \ microsoft.net \ framework64 \ v4.0.30319
  3. 使用命令“ServiceModelReg.exe -r”
  4. 注册服务模型

    积分去那里http://kumaranbose.blogspot.be/2010/08/cryptic-wcf-nettcp-errors.html

答案 1 :(得分:7)

这个问题现在已经困扰了我近三年,但只是偶尔发生。 TCPView有帮助。 我已杀死SMSSvcHost.exe进程,然后重新启动Net.Tcp Listener Adapter服务。这清除了这个问题。不是真正的解决方案,但至少,我不必再重新启动服务器了。

答案 2 :(得分:3)

我有这个问题。每次重置IIS后都会发生这种情况(这是我们部署的一部分)。重新启动NetTcpPortSharing服务(也重新启动Net.Tcp侦听器适配器服务)后问题得以解决

答案 3 :(得分:1)

我不确定我有答案,但是,您可以确定端口打开的进程,这可以帮助缩小问题的范围。我使用了具有TCPView的Sysinternals套件。这个程序对我很有帮助。

TCPView - http://technet.microsoft.com/en-us/sysinternals/bb897437

答案 4 :(得分:0)

声音Net.Tcp侦听器适配器服务正被Web服务抛出的某个进程或异常杀死,导致通道处于故障状态。

您是否尝试将服务的启动类型设置为自动并恢复服务以在第一次和第二次失败时重新启动服务?

我非常怀疑wcf net.tcp通道层中存在错误。如果监听器正在运行并且tcp套接字不再可用,我建议您查看代码,特别是围绕异常处理策略,并查看iis请求日志。

答案 5 :(得分:-1)

在AD中检入用于在IIS中运行应用程序池的帐户。

Appplication池可能正在运行,但如果帐户被禁用/锁定/需要更改密码,则会在第一次连接尝试时停止。