源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

iis应用程序池监控方法实例

  • 时间:2022-06-01 22:02 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:iis应用程序池监控方法实例
目的:公司服务器IIS有十几个应用地址池,总在不经意间停掉一个,停止线系统日志里会有一大堆警告日志,然后就停掉了,分析了好几次,网上有人说是某一个网站的问题应该查网站,但是网站又有那么多地址,谁知道从哪个请求开始就把应用地址池给弄挂掉了啊,白天还好随时有人看着服务器在,晚上停了就麻烦了,所有有了需求,自动监控应用地址池。其实方法很简单,就是定时对应用地址池遍历一遍,检查是否有未启动的应用地址池,有的话就执行启动命令。
[u]复制代码[/u] 代码如下:
/// <summary>         /// IIS应用地址池监控方法         /// </summary>         private void IISAppPools()         {             try             {                 string entPath = "IIS://LOCALHOST/W3SVC/AppPools";                 while (true)                 {                     DirectoryEntry rootEntry = new DirectoryEntry(entPath);                     foreach (DirectoryEntry AppPool in rootEntry.Children)                     {                         if (AppPool.Properties["AppPoolState"].Value.ToString() != "2")                         {                             LogHelper.Wirte("监控到" + AppPool.Name + "应用地址池停止.");                             AppPool.Invoke("Start", null);                             AppPool.CommitChanges();                             LogHelper.Wirte(AppPool.Name + "应用地址池已成功启动.");                         }                         AppPool.Close();                     }                     Thread.Sleep(600000);                 }             }             catch (Exception ex)             {                 LogHelper.Wirte(ex.ToString());             }         }
这一个方法就搞定了,10分钟监控一次,不占任何系统资源。 但是我们怎么去取的IIS中应用地址池的集合喃,其实就是一个特殊的地址,IIS中的任何配置都是可以得到的 推荐一个可视化工具,IIS资源管理工具,大家可以百度一下。
[img]http://files.jb51.net/file_images/article/201312/20131230093140.jpg?2013113093243[/img]
 
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部