這篇文章主要介紹了如何使用PHP自建穩(wěn)定可靠的守護(hù)程序,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
自建穩(wěn)定可靠的 php 守護(hù)
what
● pcntl_fork
● 進(jìn)程 / 進(jìn)程組 / 組長進(jìn)程 / 會話
● 標(biāo)準(zhǔn)輸入 / 輸出 / 錯誤
why
how
需要安裝 pcntl 擴(kuò)展,才能使用
● 后臺運(yùn)行
if ($pid=pcntl_fork ()) exit (0);// 是父進(jìn)程,結(jié)束父進(jìn)程,子進(jìn)程繼續(xù)
● 脫離控制終端,登錄會話和進(jìn)程組
posix_setsid ();// 子進(jìn)程升級組長進(jìn)程,脫離原來的會話 / 終端
● 禁止進(jìn)程重新打開控制終端
if ($pid=pcntl_fork ()) exit (0);// 結(jié)束第一子進(jìn)程,第二子進(jìn)程繼續(xù)(第二子進(jìn)程不再是會話組長)
● 關(guān)閉打開的文件描述符
fclose (STDIN),fclose (STDOUT),fclose (STDERR)// 關(guān)閉標(biāo)準(zhǔn)輸入輸出與錯誤顯示。
● 改變當(dāng)前工作目錄
chdir("/")
● 重設(shè)文件創(chuàng)建掩模
umask (0);// 防止繼承父級遺留下來的掩模
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享如何使用PHP自建穩(wěn)定可靠的守護(hù)程序內(nèi)容對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!