2013年11月15日

另外一種利用PHP寫排程的方法

這是一種非正規的方法。
我的目的是要系統定時去執行一段PHP的程式碼,幫我同步一些資料到Memcache內,方便使用者可以快速的讀取資料。
過程中我需要用到Web Server的一些Memcache特性,因此我需要定時去執行一個URL。

1. 首先用PHP寫一個程式,並放到Web Server下。
     例如:http://127.0.0.1/testSync/Sync.php

2. 另外寫一個AutoRun.php,放到D:\test\AutoRun.php
<?php
set_time_limit(1200);    //設定該Function最多只能執行20min

//Do Sync
$url = "http://127.0.0.1/testSync/Sync.php";
$ch = curl_init ($url);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, true);
$returndata = curl_exec ($ch);
curl_close($ch);

?>

3. 寫一個bat檔案,裡面的內容如下:
"C:\Program Files (x86)\PHP\php.exe" "D:\test\AutoRunSync.php"

前面這個php.exe的位置為你電腦安裝的php路徑(IIS CGI指定的路徑)

4. 最後將步驟3所產生的bat,加到Windows 排程去,設定讓他自動定時執行。

Finish.....

沒有留言:

張貼留言