如何在Linux中每500毫秒執行一次PHP程式碼?

如何在Linux中每500毫秒執行一次PHP程式碼?

我在 Linux 上有一個 http 伺服器。
我有一些 PHP 程式碼,使用以下命令將變數儲存到快取中記憶體快取我想在伺服器運行時每 500 毫秒執行一次此程式碼,即使在伺服器重新啟動後也是如此。
我正在考慮實施一項服務,但我對 Linux 沒有太多經驗,所以我不知道如何做到這一點,也不知道這是否是正確的方法。
我也聽說過 cron-jobs,但我發現它們是按分鐘而不是按秒運行的。
如何在 Linux 中每 500 毫秒執行一次 PHP 程式碼(程式碼會很有幫助)?

答案1

您可以使用一個簡單的 shell 腳本來實作:

#!/bin/bash
while true; do
    php /path/to/your/script.php & sleep 0.5s;
done

「&」將在後台分叉該進程,因此時間應該在某種程度上是準確的。我想一段時間後它會與真實時鐘不同步,因此您可能想要為腳本所做的任何事情添加時間戳,或者使用使用系統時間的守護程序的方法。

(感謝評論中的輸入)

我建議使用 systemctl 添加該腳本。本教學看起來不錯: 建立我自己的 systemd 服務文件

答案2

由於您熟悉 PHP,因此您可以建立一個 PHP 守護程式/服務。我曾經為自己做過一個 PHP 服務,因為我必須使用一個僅在 PHP 中可用的函式庫。它運行多年沒有任何問題。

以下是有關 PHP 守護程式的一些資訊:

相關內容