HttpWebRequest超时问题

希鱼 2010-10-26 09:21:21
软件上线了,问题也来了,我这个软件,每一分钟要和服务器端握手,我也就是用GET方式获取一个OK的反馈而已,结果,一天总要出现几十个错误,错误报告如下
错误报告:System.Net.WebException: The request was aborted: The operation has timed out.
at System.Net.HttpWebRequest.GetResponse()

The request was aborted: The operation has timed out。。。。。。。。。。。。
这个问题我实在是找不出到底是怎么回事,我使用了无数种方法了,汗,喷血求教各位大侠,贴上代码

private void timer2_Tick(object sender, EventArgs e)
{
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(frmIP.WoshouIP);
myReq.Method = "GET";//设置请求的方法
myReq.Timeout = 5000;
myReq.ServicePoint.ConnectionLimit = 20;
HttpWebResponse myRes = null;
try
{
myRes = (HttpWebResponse)myReq.GetResponse();
using (StreamReader sr = new StreamReader(myRes.GetResponseStream()))
{
string strgetok = sr.ReadToEnd();
if (strgetok != "OK")
{
txtThrowRong.AppendText(DateTime.Now.ToString() + " 与远程网络交互握手失败,未得到反馈,请确认网络连接良好\r\n");
txtThrowRong.ScrollToCaret();
string strErrors = DateTime.Now.ToString() + "\r\n" + "与远程网络交互握手失败,未得到反馈,未得到返回信息\r\n\r\n";
File.AppendAllText("Errors.LOG", strErrors);
SendErrorsLog(strErrors);
}
}
}
catch (Exception ex)
{
txtThrowRong.AppendText(DateTime.Now.ToString() + " 与远程网络交互握手失败,请确认网络连接良好\r\n");
txtThrowRong.ScrollToCaret();
string strErrors = DateTime.Now.ToString() +" 与远程网络交互握手失败\r\n" + "错误报告:" + ex.ToString() + "\r\n\r\n";
File.AppendAllText("Errors.LOG", strErrors);
SendErrorsLog(strErrors);
}
finally
{
if (myReq != null) { myReq.Abort(); }//销毁HttpWebRequest
if (myRes != null) { myRes.Close(); myRes = null; }
}
}
...全文
1275 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
希鱼 2010-10-26
  • 打赏
  • 举报
回复
汗。。结贴啦 ,谢谢各位
sskset 2010-10-26
  • 打赏
  • 举报
回复
每分钟一次,每天有24小时x60分钟=1440

1440多次丢失几十次很正常啊
leikgood 2010-10-26
  • 打赏
  • 举报
回复
学习了~~
再见品月 2010-10-26
  • 打赏
  • 举报
回复

网络延迟很正常呀。。。5秒有点短。。稍微长一点。

但不时的丢失一次链接也很正常。。LZ不必纠结这个。。在网络上这个是正常的
希鱼 2010-10-26
  • 打赏
  • 举报
回复
汗。。。版主出现吧 给俺解答吧。。郁闷啊,大家感觉像不像超时时间太短的原因?
希鱼 2010-10-26
  • 打赏
  • 举报
回复
晕了,关键我们公司就给这一个ip。。
希鱼 2010-10-26
  • 打赏
  • 举报
回复
希望高手指点一下,到底哪里出的问题 谢谢了
边城的刀声 2010-10-26
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 fel835 的回复:]

人生如梦兄,换其他是啥意思?能详细点吗?谢谢
[/Quote]
如梦兄的意思是不是换个测试页面
希鱼 2010-10-26
  • 打赏
  • 举报
回复
人生如梦兄,换其他是啥意思?能详细点吗?谢谢
wuyq11 2010-10-26
  • 打赏
  • 举报
回复
换其他是否可用
延迟,很多有限制
希鱼 2010-10-26
  • 打赏
  • 举报
回复
还有边城兄,压力测试没搞过 汗。。。
边城的刀声 2010-10-26
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 fel835 的回复:]

我汗了 ,那个frmip 就是个地址 服务器地址而已,关于超时时间的话,我就纳闷了。。。5秒真的不够么。。。哎 我测试了 好像无限长也会出问题,无线等待的话 并发达上线也是问题啊 ,这个好像不是这个问题吧
[/Quote]
哦,这只是个IP啊
希鱼 2010-10-26
  • 打赏
  • 举报
回复
我只不过是从服务器请求一个OK而已,5秒竟然都不够。。。应该不可能吧
希鱼 2010-10-26
  • 打赏
  • 举报
回复
我汗了 ,那个frmip 就是个地址 服务器地址而已,关于超时时间的话,我就纳闷了。。。5秒真的不够么。。。哎 我测试了 好像无限长也会出问题,无线等待的话 并发达上线也是问题啊 ,这个好像不是这个问题吧
边城的刀声 2010-10-26
  • 打赏
  • 举报
回复
myReq.Timeout = 5000;
另外你试试把超时时间设置长点燃产,5秒有些短吧
或者干脆设置 Timeout.Infinite ,让它不超时,无限等待
老Key 2010-10-26
  • 打赏
  • 举报
回复
http://zhidao.baidu.com/question/163469983.html
应该是请求上面的问题吧。。lz可以参考一下上面文章
边城的刀声 2010-10-26
  • 打赏
  • 举报
回复
frmIP.WoshouIP
这是个什么,你有没有对这个页面进行下压力测试,是不是这个页面的处理时间太长了

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧