none
Win7 下使用 WCF NetTcpBinding 首次连接时耗时很久 RRS feed

  • 问题

  • WCF的客户端,WinForm, 每次开机第一次启动软件时需要很长的时间进行连接和请求。以至于超时。强行退出后,第二次再进入,就正常。

    应该不是服务器端的问题。因为不论开几个客户端,Win7的都是这样。WinXP就没有这个问题。

    我使用的是双工通讯模式,客户机开机后去注册一些信息。服务器根据注册建立客户表,对不同的客户定时发送不同的资料。

    现在的问题是发生在注册的时候。由于我每个客户机需要注册200条左右的信息。首次运行时,每条信息需要很久,使得整个注册需要1-2小时才能完成。而第二次进入时,只需要10秒左右就完成了。

    不知道在Win7下需要做什么特别设置呢?

    我已经开启了管理员权限。否则,第一次根本不会正常运行的。而第二次,却不需要管理员身份也可以运行。

     


    Do my best
    2011年1月24日 6:07

全部回复

  • 这位大哥,你用win7做wcf要做什么特殊的配置马?我做好服务段后,配置了mex,后打不开网页,你遇到这种情况吗?

     

    2011年1月24日 8:30
  • 什么程序?

    自己调试的?

    你可以发一份代码,我测试下看看

     


    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
     

    老徐的网站】:http://www.frankxulei.com/

    微软WCF中文技术论坛
    微软WCF英文技术论坛

    Windows Azure中文技术论坛

    2011年1月30日 1:48
    版主
  • 这位大哥,你用win7做wcf要做什么特殊的配置马?我做好服务段后,配置了mex,后打不开网页,你遇到这种情况吗?

     


    你怎么配置的MEX终结点?

    贴出来


    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
     

    老徐的网站】:http://www.frankxulei.com/

    微软WCF中文技术论坛
    微软WCF英文技术论坛

    Windows Azure中文技术论坛

    2011年1月30日 1:48
    版主
  • 请将您的配置文件和服务托管代码贴一下,或者有没有Demo发过来看看。

     


    你随时可以开始!
    2011年2月11日 3:04
    版主
  • 和楼主一样,注意到我的一些程序有类似现象,在机器启动后的第1次运行,显著的要一个比较长的时间. 开调试器运行,观察output输出,可以看到程序在加载某些dll时产生一个显著的停顿;第2次运行时,这个停顿明显消失了. 我观察了一下,花费在Just In Time编译上.某些共享使用的dotnet程序集,在开机后第一次被调用前,经过一个JustInTime编译过程,这个过程相当花时间.在一些用到WPF的程序上尤其明显,WCF和WF程序也相当明显,而纯粹的WinForm程序感觉不明显.第2次运行使用了先前编译好的缓冲,因此改善明显 如果楼主的程序对这个比较敏感,可以考虑用LoadAssembly,确认加载dll完成后,再执行业务逻辑
    2011年2月11日 6:48