Webservice超时问题
Winform客户端调用Webservice 120秒超时.对此问题,针对服务器与客户端分别作了超时设置为300S.
1. 服务器端设置超时
在 web.config 的 system.web 里添加如下配置项:
< httpRuntime
executionTimeout="300000"
/>
记得要把 web.config 的 debug 模式关闭:
< compilation
defaultLanguage="c#"
debug="false"
/>
2. 客户端设置超时
在 WebService 的客户端代理程序(用 wsdl.exe 生成)里设置 Request 超时时间, 单位是毫秒:
protected override WebRequest GetWebRequest(Uri uri)
{
HttpWebRequest wr = (HttpWebRequest)base.GetWebRequest( uri );
wr.Timeout = 300*1000;
return wr;
}
但还是会出现120S超时.
此问题可以得出以下结论:
1:可能是服务器的问题
2:可能是客户端.net环境配置的问题
3:可能是网域的问题
4:可能是网路的问题
对此.分别作如下测试:
1:更换客户端电脑.测试有些电脑出现超时,有些电脑不会超时.可以肯定.服务器是没有问题
2:分别查看几台客户端电脑配置,以没有发现问题.
3:在同一个网域里面,有的电脑不会超时,有些电脑超时.所以,可以排除网域问题.
4:对于网路的问题,有分别查看各网段路由设置.但没有发现问题.
以上的测试,好象都可以排除.难不成是MS的Bug.在网上查了一通,根本没有本到什么结果.现在,回头想一想webservice原理:
客户端和服务端把请求和数据结果以XML的形式进行SOAP包装,以HTTP等形式进行传送,从而实现相应交互
根据Webservice原理,应该可以肯定是Http超时.那么问题到底出现在哪里,路由器设置没有问题,网路也通顺.会不会是IE版本 问题.问题越来越接近.最后查看半天,没有发现问题,偶然点了一下IE的代理设置 .发现有设置代理.难不成是代理引发超时.经过最后测试.发现问题的根本原因就是代理设置超时时间120S.
总结一下:
webservice超时问题,先应该从程式上着手.比如:web.config超时设置, 以及客户端的超时设置 .如果设置后还是发生超时.那就得从webservice运行原理上去找原因.也就是从http上找原因:比如:网路问题 ,IE代理设置问题, 以及其它对网路设置引发超时的问题
Webservice超时问题的更多相关文章
- 问题:C#调webservice超时;结果:C#调用webservice服务超时
C#调用WebService服务时,报错,The operation has timed out,意思是“操作超时”. 方法/步骤 首先修改服务端配置 WebService服务所在站点为服务端,它提供 ...
- CXF调用webservice超时设置
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setServiceClass(Service1Soap.cl ...
- 调用webservice超时问题的解决[转]
1.web.config配置,<system.web></system.web>里面增加:<httpRuntime maxRequestLength="1024 ...
- WebService超时
1.web.config配置,<system.web></system.web>里面增加:<httpRuntime maxRequestLength="1024 ...
- webservice远程调试开启
在.NET 中已经默认将WEBSERVICE的远程调试功能关闭,有的时候我们需要远程调试程序的时候,就需要打开此功能我们只需在WEBSERVICE的项目的中添web.config的<system ...
- WebService SendTimeout 超时问题
System.TimeoutException: 请求通道在等待 00:01:00 以后答复时超时.增加传递给请求调用的超时值,或者增加绑定上的 SendTimeout 值.分配给此操作的时间可能是更 ...
- WebService文件上传相关配置(404.13、超出限制、超时)
最近在做文件上传的功能,遇到一些问题,记录如下,以备以后使用. 1.HTTP Error 404.13 - Not Found,请求筛选模块被配置为拒绝超过请求内容长度的请求. IIS默认允许请求长度 ...
- 记一次webservice的超时时间设置
一次项目组中需要控制超时时间,前期习惯用CXF实现,熟悉的才是最好的.所以这次依然想用CXF实现. 实现的方式代码如下: static{ String fvpWebserviceUrl = Prope ...
- 客户端设置WebService调用超时时间
刚接触WebService,对如何在客户端设置WebService调用超时时间查阅了一些资料,现总结如下: ============================================== ...
随机推荐
- Kinect2.0骨骼跟踪与数据平滑
Kinect v1和Kinect v2传感器的配置比较: Kinect v1 Kinect v2 颜色(Color) 分辨率(Resolution) 640×480 1920× ...
- java常见数据结构整理
java中容器类数据结构主要在java.util包中. java.util包中三个重要的接口及特点:List(列表).Set(保证集合中元素唯一).Map(维护多个key-value键值对,保证key ...
- Ubuntu 16.04 编译安装 ss
在网上没有找到合适的适合ubuntu的ss客户端, 考虑到ss的编译安装其实就带了ss-local这样的客户端, 于是在Ubuntu下编译安装了ss. 首先去github上下载最新的安装包 https ...
- 第十九章,指针小练习(C++)
#include <iostream> int main(int argc, char** argv) { int i = 1; int *n ; n=&i;//*n=i 这样的赋 ...
- 【TP3.2.*】解决session过期不失效 和 设置不成功问题
// ---------- 更新与 2019/01/23日 -------------// 1.问题:本来我想设置session有效期1800秒即30分钟 失效的,可是实际使用TP3.2.0的时候发现 ...
- JQuery实现的 checkbox 全选;<select>下拉框功能
1. 全选的checkbox选中时,子checkbox全部选中.反之,全部不选 2.子checkbox中,只要有没有被选中的,取消全选checkbox的选中 3.子checkbox的数量和子check ...
- Spring MVC 教程,快速入门,深入分析[1-11]
资源下载: Spring_MVC_教程_快速入门_深入分析V1.1.pdf SpringMVC核心配置文件示例.rar 作者:赵磊 博客:http://elf8848.iteye.com ...
- <转>赋值表达式解析的流程
转自:http://www.cnblogs.com/nazhizq/p/6520072.html 上节说到表达式的解析问题,exprstate函数用于解析普通的赋值表达式.lua语言支持多变量赋值.本 ...
- 推荐系统排序(Ranking)评价指标
一.准确率(Precision)和召回率(Recall) (令R(u)是根据用户在训练集上的行为给用户作出的推荐列表,而T(u)是用户在测试集上的行为列表.) 对用户u推荐N个物品(记为R(u) ...
- 【C语言】练习5-8
题目来源:<The C programming language>中的习题P92 练习5-8: 一个日期转换的问题,把某月某日这种日期表示形式转换为某年中第几天的表示形式,反之亦然.例 ...