c#ping一个网站? (保持活力服务)

有没有一种方法在c#中能够每隔15分钟ping一个url并从服务器获得响应?

我想尝试看看.net是否可用于构建一个简单的工具,让asp.net网站调用重新构建,以便第一个用户在应用程序启动时不会产生负载惩罚。

或者,如果有人有另一种方法来实现同一目标……想法? 提示? 想法?

通常情况下,推送版本的人应该在他们上传网站后访问,只是为了测试(确保没有被轰炸)。 但是,如果您正在寻找一种程序化方法, WebClient可能会有所帮助……

 using (WebClient client = new WebClient()) { client.DownloadString("http://wwww.sitename.com/"); } 

然后使它成为一个exe并使用Windows调度程序来运行它。 甚至可以将它放在WinService中并将状态报告给日志文件。

更新:

看起来VS2012现在在发布后打开页面,使那些推送网站成为第一个请求。

此外,如果您发现必须经常访问它(每隔15分钟提到一次),您可能需要查看重新配置IIS / AppPool并将周期时间更改为更长的时间。 IIS本身可以节省未使用的资源,因此如果一段时间内未查询某个站点,它将实际释放内存以供其他应用程序使用。

您可以创建一个HttpWebRequest并使用Quartz.NET之类的东西来安排它。

您可以启动WebRequest – ping不会让网站重建。

我将安装curl并使用计划任务来执行您想要的操作。

我将它与powershell结合起来也重新启动了应用程序池。

你可以NGEN你的ASP.NET程序集,并将其与Hector的热身答案结合起来 。