การตรวจสอบกระบวนการ
Webman มี monitor
กระบวนการตรวจสอบที่รองรับสองฟังก์ชัน
- ตรวจสอบการอัปเดตไฟล์และโหลดรหัสธุรกิจใหม่โดยอัตโนมัติ (โดยทั่วไปใช้ในระหว่างการพัฒนา)
- ตรวจสอบการใช้หน่วยความจำของกระบวนการทั้งหมด หากกระบวนการใดใช้หน่วยความจำใกล้จะเกินขีดจำกัด
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
จะเปิดใช้งานการตรวจสอบการอัปเดตไฟล์ (ในระบบลินุกซ์เมื่อรันในโหมดดีบักจะเปิดใช้งานการตรวจสอบไฟล์โดยปริยาย)
เมื่อตั้งค่า options.enable_memory_monitor
เป็น true
จะเปิดใช้งานการตรวจสอบการใช้หน่วยความจำ (การตรวจสอบการใช้หน่วยความจำไม่รองรับระบบวินโดวส์)
คำแนะนำ
ในระบบวินโดวส์ ต้องรันwindows.bat
หรือphp windows.php
เพื่อเปิดใช้งานการตรวจสอบการอัปเดตไฟล์