Мониторинг процессов
Webman поставляется с мониторингом процессов, который поддерживает две функции:
- Мониторинг обновлений файлов и автоматическая перезагрузка новых бизнес-кодов (обычно используется в процессе разработки).
- Мониторинг использования памяти всеми процессами. Если какой-либо процесс использует память, близкую к ограничению
memory_limit
вphp.ini
, он автоматически безопасно перезапускается (не затрагивая бизнес).
Конфигурация мониторинга
Конфигурационный файл 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
.