【发布时间】:2014-10-30 14:12:56
【问题描述】:
到目前为止我的代码是
`tcpClient = new TcpClient();
tcpClient.Connect(ip.IpAddress, Convert.ToInt32(ip.Port));
if (tcpClient.Connected)
{
Console.WriteLine("Host is up");
Console.ReadKey();
}
else
{
UpdateDowntime(ip);
}`
我正在测试的 ipAddress 和端口是一个通过 IIS 运行的 DEV 站点。我已停止此站点的 AppPool。如果我通过浏览器导航到这里,我会得到 p>
服务不可用
HTTP 错误 503。服务不可用。
但如果我运行代码,它会连接并打印“主机已启动”
请告知我在该步骤中缺少的内容。
【问题讨论】:
-
您只是测试机器是否可以接受 tcp 连接,而不是 Web 服务器是否能够处理请求。如果 TCP 连接不起作用,则 Web 服务器无法返回 503 不可用响应。
-
好的,那么正常运行时间监视器的这些方面比 TcpClient 更有效并捕获 503 错误? stackoverflow.com/questions/10107305/…
-
我不知道“更高效”,但根据该链接发送 HTTP 请求会告诉您 Web 服务器是否能够处理请求。
-
感谢您的帮助。
标签: c# tcpclient uptime-monitoring