การตรวจสอบกระบวนการ

Webman มี monitor กระบวนการตรวจสอบที่รองรับสองฟังก์ชัน

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