我的网站上有一个网络服务器,我正在努力测试它,但我似乎无法做到。我认为问题是XP(Pro)中的并发连接数量有限。
我在C#中编写了一个简单的客户端来进行压力测试:
...
for (int i = 0; i < _numThread; i++)
{
Thread t = new Thread(CallGetHttp);
t.Start();
}
...
private void CallGetHttp()
{
WebRequest wrGETURL;
wrGETURL = WebRequest.Create(_url);
WebProxy myProxy = new WebProxy("myproxy", 80);
myProxy.BypassProxyOnLocal = true;
wrGETURL.Proxy = WebProxy.GetDefaultProxy();
Stream objStream;
objStream = wrGETURL.GetResponse().GetResponseStream();
StreamReader objReader = new StreamReader(objStream);
..
}
这是正确的吗?如果是这样,我怎样才能增加并发连接数?
答案 0 :(得分:3)
连接限制在入站套接字上,并且它被硬编码到XP的网络堆栈中以防止它们被用作服务器(对于Microsoft来说更多钱......)你唯一的选择是如果你在微软堆栈上移动到Windows Server,如果你的代码支持它,或合法地移动到linux。如果您没有做任何过于具体的事情,请查看单声道。
还要小心陷入虚拟PC陷阱。微软虚拟PC的网络访问是通过XP网络堆栈进行的。因此,如果您在XP内部的VM中运行linux,那么您仍然受限于10个入站连接。