प्रक्रिया मॉनिटरिंग
webman में एक अंतर्निहित मॉनिटर प्रक्रिया है जो दो सुविधाएँ प्रदान करती है:
- फ़ाइल अपडेट की मॉनिटरिंग करती है और नया व्यावसायिक कोड स्वचालित रूप से रीलोड करती है (आमतौर पर विकास के दौरान उपयोग)।
- सभी प्रक्रियाओं की मेमोरी खपत की मॉनिटरिंग करती है; यदि कोई प्रक्रिया
php.iniमेंmemory_limitसीमा के करीब पहुँच रही है, तो उस प्रक्रिया को स्वचालित रूप से सुरक्षित रूप से पुनः आरंभ करती है (व्यवसाय पर असर नहीं)।
मॉनिटरिंग कॉन्फ़िगरेशन
config/process.php में monitor कॉन्फ़िगरेशन:
global $argv;
return [
// फ़ाइल अपडेट का पता लगाना और स्वचालित रीलोड
'monitor' => [
'handler' => process\Monitor::class,
'reloadable' => false,
'constructor' => [
// इन निर्देशिकाओं को मॉनिटर करें
'monitorDir' => array_merge([ // किन निर्देशिकाओं की फ़ाइलों को मॉनिटर करना है
app_path(),
config_path(),
base_path() . '/process',
base_path() . '/support',
base_path() . '/resource',
base_path() . '/.env',
], glob(base_path() . '/plugin/*/app'), glob(base_path() . '/plugin/*/config'), glob(base_path() . '/plugin/*/api')),
// इन एक्सटेंशन वाली फ़ाइलें मॉनिटर की जाएँगी
'monitorExtensions' => [
'php', 'html', 'htm', 'env'
],
'options' => [
'enable_file_monitor' => !in_array('-d', $argv) && DIRECTORY_SEPARATOR === '/', // फ़ाइल मॉनिटरिंग सक्षम करें
'enable_memory_monitor' => DIRECTORY_SEPARATOR === '/', // मेमोरी मॉनिटरिंग सक्षम करें
]
]
]
];
monitorDir अपडेट के लिए किन निर्देशिकाओं को मॉनिटर करना है यह कॉन्फ़िगर करता है (मॉनिटर की गई निर्देशिकाओं में फ़ाइलें अधिक न हों)।
monitorExtensions monitorDir निर्देशिकाओं में किन फ़ाइल एक्सटेंशन को मॉनिटर करना है यह कॉन्फ़िगर करता है।
options.enable_file_monitor जब true हो तो फ़ाइल अपडेट मॉनिटरिंग सक्षम होती है (Linux पर डिबग मोड में चलाने पर डिफ़ॉल्ट रूप से सक्षम)।
options.enable_memory_monitor जब true हो तो मेमोरी मॉनिटरिंग सक्षम होती है (Windows पर समर्थित नहीं है)।
सुझाव
Windows पर, फ़ाइल अपडेट मॉनिटरिंग केवलwindows.batयाphp windows.phpचलाने पर सक्षम होती है।