我有一个WCF服务,它连接SQL服务器并获取一些数据,构造对象然后返回它。我使用简单绑定,.NET 4.0,在创建WCF服务时,我没有添加任何特殊设置,只是模板中的默认设置。
该服务在我的本地数据库运行正常,但是当我在服务器上部署时,我检查了时间,处理需要7微秒(第一个需要更多)但在到达START处理之前,WCF正在接受<在点击第一行代码之前,每个请求都有b> 3秒,我找不到原因。
<endpoint address="http://localhost/Service.svc" binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IService" contract="Local.IService"
name="BasicHttpBinding_IService" />
谢谢!
服务行为:
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information, set the value below to false before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
绑定:
<bindings>
<basicHttpBinding>
<binding name="BasicBinding" maxReceivedMessageSize="10485760" />
</basicHttpBinding>
</bindings>
答案 0 :(得分:0)
请求到达IIS和到达C#代码之间发生的主要问题之一是安全检查。根据您的设置,您的开发机器可能没有任何安全性。
假设您正在使用Windows身份验证和NTLM。然后有一个3请求握手,http,401.2,401.1和200响应。在这些请求之间,您的Web服务器将与您的AD服务器通信。
您应该可以通过检查IIS日志来查看这是否是问题。