การดำเนินการของ webman
กระบวนการเริ่มต้น
เมื่อรันคำสั่ง php start.php start กระบวนการการเปิดใช้งานดำเนินการตามนี้:
- โหลดการตั้งค่าที่อยู่ใน config/
- ตั้งค่า Worker สำหรับไฟล์เช่น
pid_file
stdout_file
log_file
max_package_size
- สร้างกระบวนการ webman และฟังก์ชันที่ได้รับการอง่ตได้ และฟังก์ชัน checking (เริ่มต้นที่พอร์ต 8787)
- ตามการตั้งค่าสร้างกระบวนการโดยตั้งค่าเอง
- หลังจากการเริ่มต้นใช้งาน webman และกระบวนการแบบกำหนดเองยืนยันตามโค้ดต่างๆด้านล่าง(คือใน onWorkerStart):
① โหลดไฟล์ที่ได้รับการตั้งค่าที่อยู่ในconfig/autoload.php
เช่นapp/functions.php
② โหลดไฟล์ที่ได้รับการตั้งค่าที่อยู่ในconfig/middleware.php
(รวมถึงconfig/plugin/*/*/middleware.php
)
③ ประมวลผลไฟล์ที่ชื่นว่าconfig/bootstrap.php
(รวมถึงconfig/plugin/*/*/bootstrap.php
) ประกอบกับการตั้งค่าคลาสเริ่มต้นสำหรับการบันทึกข้อมูลstart
เช่นการเชื่อมต่อฐานข้อมูล Laravel
④ โหลดไฟล์ที่ชื่นว่าconfig/route.php
(รวมถึงconfig/plugin/*/*/route.php
) ที่กำหนดเส้นทาง
กระบวนการการดำเนินการคำข้อร้องขอ
- ตรวจสอบว่า URL ของคำข้อร้องขอสอดคล้องกับไฟลนสถิตที่อยู่ใน public หรือไม่ หากใช่คือที่ตั้งก้คำข้อร้องขอได้ไฟล์น หากไม่คือให้เข้าไปที่ 2
- ตาม URL ที่ตั้งก้การตรวจสอบสายเป็นอันที่มีการตรวจเจอชื่อเส้นทางหรือไม่ หากไม่ให้ไปที่ 3; ถามท่าที่ซมีการตรวจสอบโดยปกติหรือไม่
- ตามอันข้งส์โดยปกติให้แสดง404 (จบคำข้อร้องขอ); ถยาท่าที่ซคือ 洋葱模型请求阶段 จะเข้าไปที่ 4
- ค้นหามัหผงค้ประสงข'างร้องข'างลย์ จังผตการประสงผประรัใคเข้าไปโดยการทำข่าบที (ระหว่าการขับขือเงมู้รฉง ปูๆ้น้าท่ากาหกปัน)(Asynchronous Model) ดำเนินการ การปปโดยการทดโมย่ (洋葱模型响应阶段) คำข้งส์จบการของเรา (อ้างอิงจากระหว่าแล้วรัง)