想把一个项目从linux移到windows下,但是在linux下需要做实时数据处理。如export.php这个页面要5秒运行一次,在linux下是用auto_export.sh 里面写的死循环做的,为知道windows应该如何实现。ps:注意是5秒输出一次,任务计划是做不到的。 用ignore_user_abort(),在php页面内做死循环,一段时间后会引起CPU100%.
不知道大家有什么好的方法,最好不怕麻烦,贴些例子出来,因项目比较紧,希望大家能帮帮忙。

解决方案 »

  1.   

    用js的 SetInterval 或setTimeout 每5秒 ajax访问export.php文件
      

  2.   

    UP 可以通过一个页面启动 (AJAX给后台一个页面 该页面每5秒调一下那个export.php)
      

  3.   


    既然linux用死循环做了,windows下不是一样可以?
      

  4.   

    我知道win有计划任务 但没用过 不知道可不可以
      

  5.   

    回3楼:既然linux用死循环做了,windows下不是一样可以?linux是用sh做的,./auto_export_sh & 就在后台运行,没有异常。做在windows下,比如:auto_export.php ,打开这个页面一次,然后关掉,一段时间后就会发现CPU使用达100%,页面也运行得很慢
    ignore_user_abort();
    set_time_limit(0);
    while(true){
    if(file_get_contents("switch.txt")){//自定义开关
         include("export.php");
         file_put_contents("log.txt",date("Y-m-d H:i:s"),FILE_APPEND);//日志
         sleep(5);
    }else
        break;
    }
      

  6.   

    linux没有界面都可以做,更别说windows了
      

  7.   


    windows的计划任务 和 linux的crontab 最频繁只能做到每分钟运行一次。 
      

  8.   


    linux在服务器,安全性等方面都优于windows,判断一个系统好不好,并不是用有没有界面来衡量吧。
      

  9.   

    window下批处理可以完成。写一个批处理程序循环执行。批处理具体语法,可以参照dos命令。
      

  10.   


    windows 里也用命令行提交, 适当输出一些运行信息,
    然后做一些有针对性的测试,搞清到底是什么原因造成100%