All articles(网络文学目录) All Pictures(图片目录) All Softwares(软件目录)

 
应用实例:用javascript实现定时任务_JavaScript技术_编程技术

Writer: delv Article type: Programming skills(编程技巧) Time: 2013/12/31 6:40:41 Browse times: 349 Comment times: 0

应用实例:用javascript实现定时任务_JavaScript技术_编程技术


Head photo

Go homepage
Upload pictures
Write articles

应用实例:用javascript实现定时任务_JavaScript技术_编程技术-你的首页-uuhomepage.com

  作定时处理的话,我们首先考虑到的就是自己写个程序,然后把这个程序部署到Win的计划任务中。

  这个程序可以是简单的批处理dat文件,也可以是一个js文件。当然更复杂的dll,exe也可以。

  考虑到方便性,易维护,我推荐用js文件。

  下面是个简单的js范例文件。

  他的功能是:访问一个页面,如果发现这个页面异常重起iis服务。

  把它部署到计划任务中,就可以对Web站点进行监控。

  if(!CheckUrl())
  {
  WScript.Echo("iisreset");
  var s = new ActiveXObject("WScript.Shell");
  s.Run("iisreset");
  }
  else
  {
  WScript.Echo("OK");
  }
  function CheckUrl()
  {
  try
  {
  var xh=new ActiveXObject("Microsoft.XMLHTTP");
  xh.open("GET","http://localhost/quickstart/aspplus/doc/businessobjs.aspx",false);
  xh.send("");
  return xh.status == 200;
  }
  catch( X )
  {
  return false;
  }
  }
  以上使用 Microsoft.XMLHTTP 如果一个站点没有响应,他会一直等下去。改成 MsXML2.ServerXMLHTTP 就可以避免这个问题。参考下面函数:
  function CheckUrl()
  {
  try
  {
  // 使用这个,可以设置超时时间,不用一直等待。
  var XMLServerHttp = new ActiveXObject("MsXML2.ServerXMLHTTP");
  var lResolve = 5 * 1000;
  var lConnect = 5 * 1000;
  var lSend = 15 * 1000;
  var lReceive = 15 * 1000;
  XMLServerHttp.setTimeouts(lResolve, lConnect, lSend, lReceive);
  XMLServerHttp.open("GET", "http://localhost/quickstart/aspplus/doc/businessobjs.aspx", false);
  XMLServerHttp.send();
  return XMLServerHttp.status == 200;
  }
  catch( X )
  {
  return false;
  }
  }




There are 0 records,
Comment:
Must be registered users to comment(必须是注册用户才能发表评论)

Disclaimer Privacy Policy About us Site Map
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.