c# – 快速HTTP调用ASP.Net
发布时间:2020-12-16 01:43:42 所属栏目:百科 来源:网络整理
导读:我正在使用以下代码向第三方发送HTTPWebRequest.响应需要2到22秒才能回来.第三方声称,一旦收到它,他们立即发回回复,并且他们的其他合作伙伴都没有报告任何延迟(但我不确定我是否相信他们 – 他们之前已经撒谎). HttpWebRequest request = (HttpWebRequest)We
我正在使用以下代码向第三方发送HTTPWebRequest.响应需要2到22秒才能回来.第三方声称,一旦收到它,他们立即发回回复,并且他们的其他合作伙伴都没有报告任何延迟(但我不确定我是否相信他们 – 他们之前已经撒谎).
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.example.com"); request.Timeout = 38000; request.Method = "POST"; request.ContentType = "text/xml"; StreamWriter streamOut = new StreamWriter(request.GetRequestStream(),System.Text.Encoding.ASCII); streamOut.Write(XMLToSend); // XMLToSend is just a string that is maybe 1kb in size streamOut.Close(); HttpWebResponse resp = null; resp = (HttpWebResponse)request.GetResponse(); // This line takes between 2 and 22 seconds to return. StreamReader responseReader = new StreamReader(resp.GetResponseStream(),Encoding.UTF8); Response = responseReader.ReadToEnd(); // Response is merely a string to hold the response. 有什么理由说上面的代码只是……暂停?代码在一个非常可靠的托管服务提供商(Rackspace Intensive Segment)中运行,并且它所使用的机器不会被用于其他任何东西.我只是在测试一些我们即将投入生产的代码.所以,并不是机器被征税,并且鉴于它是Rackspace并且我们正在付船,我怀疑它是他们的网络. 我只是想确保我的代码尽可能快,并且我没有做任何愚蠢的事情,因为在几周内,这段代码将逐渐增加,每小时向第3部分运行20,000个请求. 解决方法
我会做一些事情:
>我会分析上面的代码,并获得一些明确的时间.>实现using语句以正确处理资源.>以异步方式编写代码,一旦崩溃,将会有大量的IO等待. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |