求局域网最快速判断webservice是否可用的方法!

天罡gg 2012-06-07 09:47:58
求局域网最快速判断webservice是否可用的方法!
网上搜了一下,
MSXML2.XMLHTTP的方法慢,pass
HttpWebRequest的方法慢, pass
//
我现在用的方法的调用webservice中的一个空方法,如果不进catch就说明是可用的,Timeout = 3000(超时时间是否能小点呢?是否和各种局域网有关?)

还有更快的方法吗?
...全文
246 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
天罡gg 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
HttpWebRequest的方法
调用webservice中的一个空方法

这两种是一样的吧,都是发送个http request 等待response.
如果url不存在,应该很快会有404返回。
[/Quote]
呵呵,好像一样,只不过网上给的例子没加上Timeout ,所以就慢了。

感觉最快的方法就是判断是否超时了,超时时间多少合适呢?
1秒短了,有时存在的webservice偶尔都会超时。
宝_爸 2012-06-07
  • 打赏
  • 举报
回复
HttpWebRequest的方法
调用webservice中的一个空方法

这两种是一样的吧,都是发送个http request 等待response.
如果url不存在,应该很快会有404返回。
天罡gg 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
另外就是异步调用。如果同步用户界面容易卡住。ui体验不好
[/Quote]

已经异步了,我是这样做的。在调用webservice方法之前,先判断webservice是否可用,
因为调用的webservice方法耗时不确定,所以如果webservice不可用,那就不调用了,节省时间嘛。
天罡gg 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
lz说的慢是什么意思?
[/Quote]

就是如果webservice不存在url上(客户换了服务器IP),那么检测速度慢,其实是等到超时了。
宝_爸 2012-06-07
  • 打赏
  • 举报
回复
lz说的慢是什么意思?
caoqinghua 2012-06-07
  • 打赏
  • 举报
回复
另外就是异步调用。如果同步用户界面容易卡住。ui体验不好
天罡gg 2012-06-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
webservice的宿主是iis,建议写一个监控端,每隔30秒钟检测一次webservice状态。然后把检测结果存储到sql中。客户端连接sql查询。另外一种就是webservice里面处理。如果出现异常,写入数据库。
[/Quote]

谢谢,确实是一种方法。

我的方法可有改进的空间或者说还有什么漏洞吗?
因为webservice已经部署到客户端,不想做改动。

caoqinghua 2012-06-07
  • 打赏
  • 举报
回复
webservice的宿主是iis,建议写一个监控端,每隔30秒钟检测一次webservice状态。然后把检测结果存储到sql中。客户端连接sql查询。另外一种就是webservice里面处理。如果出现异常,写入数据库。

110,534

社区成员

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

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

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