การดำเนินการ

ขั้นตอนการเริ่มกระบวนการ

เมื่อเรียกใช้คำสั่ง php start.php start ขั้นตอนการดำเนินการจะเป็นดังนี้:

  1. โหลดการกำหนดค่าจากโฟลเดอร์ config/
  2. ตั้งค่าที่เกี่ยวข้องกับ Worker เช่น pid_file stdout_file log_file max_package_size เป็นต้น
  3. สร้างกระบวนการ webman และฟังพอร์ต (ค่าปริยายคือ 8787)
  4. สร้างกระบวนการที่กำหนดเองตามการกำหนดค่า
  5. หลังจากที่กระบวนการ webman และกระบวนการที่กำหนดเองเริ่มทำงาน จะดำเนินการตามลำดับต่อไปนี้ (ซึ่งทั้งหมดจะเกิดขึ้นใน onWorkerStart):
    ① โหลดไฟล์ที่กำหนดใน config/autoload.php เช่น app/functions.php
    ② โหลด middleware ที่กำหนดใน config/middleware.php (รวมถึง config/plugin/*/*/middleware.php)
    ③ เรียกใช้วิธี start ของคลาสที่กำหนดใน config/bootstrap.php (รวมถึง config/plugin/*/*/bootstrap.php) เพื่อเริ่มต้นโมดูลบางอย่าง เช่น การเชื่อมต่อกับฐานข้อมูลของ Laravel
    ④ โหลดเส้นทางที่กำหนดใน config/route.php (รวมถึง config/plugin/*/*/route.php)

ขั้นตอนการจัดการคำขอ

  1. ตรวจสอบว่า URL ที่ร้องขอตรงกับไฟล์สถิติตรงโฟลเดอร์ public หรือไม่ ถ้าใช่ให้ส่งคืนไฟล์ (สิ้นสุดคำขอ) ถ้าไม่ใช่ให้ไปที่ข้อ 2
  2. ตรวจสอบว่า URL ตรงกับเส้นทางใดเส้นทางหนึ่งหรือไม่ ถ้าไม่ตรงให้ไปที่ข้อ 3 ถ้าตรงให้ไปที่ข้อ 4
  3. ถ้าได้ปิดเส้นทางเริ่มต้นไว้ ให้ส่งคืน 404 (สิ้นสุดคำขอ) ถ้าไม่ให้ไปที่ข้อ 4
  4. ค้นหาสิ่งที่ middleware ที่ตรงกับตัวควบคุมตามคำขอ จากนั้นดำเนินการตามลำดับของการดำเนินการเบื้องต้นของ middleware (ขั้นตอนการร้องขอแบบ Onion Model) ดำเนินการตามตรรกะทางธุรกิจของตัวควบคุม และดำเนินการตามลำดับของการดำเนินการหลังจาก middleware (ขั้นตอนการตอบสนองแบบ Onion Model) คำขอสิ้นสุด (ดูข้อมูลเพิ่มเติมที่ Middleware Onion Model)