dubbo-php-framework控制檯provider_admin其他操作解析
阿新 • • 發佈:2018-12-09
通過前面兩篇文章分析了provider_admin裡面服務啟動過程,這篇我們把剩下的幾個操作的實現做介紹,這裡主要介紹list,status,stop,reload這四個操作,而額外的restart過程就是首先呼叫stop,後呼叫start的過程,不展開具體分析。先介紹stop過程。
function stopProvider($name) { $masterPid = getProviderMasterPid($name); if (empty($masterPid)) { waitProcessEnd($name); } else { if (!posix_kill(intval($masterPid), SIGTERM)) { fwrite(STDERR, "end signal to {$name}: {$masterPid} failed" ); } waitProcessEnd($name); } $masterFile = FSOF_PROVIDER_PID_PATH.$name.MASTER_PID_FILE_FORMAT; $managerFile = FSOF_PROVIDER_PID_PATH.$name.MANAGER_PID_FILE_FORMAT; if (file_exists($masterFile)) { unlink($masterFile); } if (file_exists($managerFile)) { unlink($managerFile); } echo "stop server {$name} \033[32;40m [SUCCESS] \033[0m".PHP_EOL; }