fsc.exe非常慢,因为它试图访问crl.microsoft.com

时间:2010-08-18 15:59:03

标签: networking f#

当我在构建服务器上运行F#compiler - fsc.exe时,即使没有输入文件,也需要很长时间(~20秒)才能运行。经过一番调查后,我发现这是因为应用程序试图访问crl.microsoft.com(可能是为了检查某些证书是否未被撤销)。但是,运行它的帐户无法访问Internet。而且因为我们的路由器/防火墙/无论是丢弃SYN数据包,fsc.exe都会在放弃之前多次尝试。

想到的唯一解决方案是在主机文件中将clr.microsoft.com设置为127.0.0.1,但这是非常讨厌的解决方案。而且,我需要在我们的生产盒上使用fsc.exe,在那里我不能做这些事情。还有其他想法吗?

由于

1 个答案:

答案 0 :(得分:8)

自己来看看 - 这里有一些链接......更好的描述和一些替代方案

http://www.eggheadcafe.com/software/aspnet/29381925/code-signing-performance-problems-with-certificate-revocation-chec.aspx

当我们点击它时,我在这个表格中挖出了一个旧的MS KB for Exchange ...只是让DNS服务器按照规定回复(可能是您的生产箱的解决方案。

MS Support KB

  

CRL检查是超时的,因为它   永远不会收到回复。如果是路由器   是发送“无路由主机”ICMP   包或类似的错误而不是   只丢弃数据包,CRL   检查会立即失败,并且   服务将开始。你可以添加一个   进入crl.microsoft.com   托管文件或在DNS服务器上   将数据包发送给合法的   网络上的位置,例如   127.0.0.1,它将拒绝连接......“