สถาปัตยกรรมของได้ Nginx รับการออกแบบมาเพื่อให้ได้ประสิทธิภาพ ความเสถียร และความสามารถในการปรับขนาดได้สูง ด้านล่างนี้เป็นคำอธิบายโดยละเอียดเกี่ยวกับองค์ประกอบหลักของสถาปัตยกรรม Nginx:
Master Process
นี่เป็นกระบวนการหลักของ Nginx หรือที่เรียกว่ากระบวนการพาเรนต์ ความรับผิดชอบคือการจัดการกระบวนการของผู้ปฏิบัติงานและงานการจัดการทั่วไปอื่นๆ อ่าน master process และประมวลผลการกำหนดค่า จากนั้นสร้างกระบวนการของผู้ปฏิบัติงานเพื่อจัดการคำขอจากลูกค้า
Worker Process
เมื่อสร้างโดย master process กระบวนการของผู้ปฏิบัติงานจะกลายเป็นกระบวนการย่อย Nginx ของ จำนวนกระบวนการของผู้ปฏิบัติงานสามารถกำหนดค่าให้ตรงกับความต้องการด้านประสิทธิภาพและทรัพยากรของระบบ แต่ละตัว ทำงานอย่างอิสระ ไม่ใช้ หน่วย worker process ความจำร่วมกัน และไม่สื่อสารระหว่างกันโดยตรง ซึ่งช่วยเพิ่มความเสถียรของ Nginx
Event-driven Architecture
Nginx ใช้ an event-driven architecture เพื่อจัดการกับคำขอ แทนที่จะใช้เธรดแยกกันสำหรับแต่ละคำขอ ให้ Nginx ใช้ฟังก์ชันแบบอะซิงโครนัสเพื่อจัดการเหตุการณ์ สิ่งนี้ทำให้หนึ่งรายการ worker process สามารถจัดการคำขอหลายรายการพร้อมกัน เพิ่มประสิทธิภาพทรัพยากรระบบและรับประกันประสิทธิภาพระดับสูง
Event Module
Nginx รองรับ event module การทำงานที่หลากหลายกับระบบปฏิบัติการและโครงสร้างพื้นฐานของเครือข่าย โมดูลเหล่านี้ช่วย Nginx โต้ตอบกับเคอร์เนลและหลีกเลี่ยงการบล็อกและการรอที่ไม่จำเป็น ลดภาระในระบบ
Worker Connections
นี่คือจำนวนการเชื่อมต่อที่แต่ละรายการ worker process สามารถจัดการพร้อมกันได้ คอนฟิกูเรชันนี้อนุญาตให้ปรับแต่งจำนวนการเชื่อมต่อเพื่อให้มั่นใจถึงประสิทธิภาพสูงสุดตามทรัพยากรระบบและการรับส่งข้อมูลคำขอของไคลเอ็นต์
Proxy และ Load Balancing
Nginx สามารถทำหน้าที่เป็น proxy เซิร์ฟเวอร์ อนุญาตให้กำหนดเส้นทางคำขอจากไคลเอนต์ไปยังเซิร์ฟเวอร์แอปพลิเคชันส่วนหลังภายในระบบ สิ่งนี้ทำให้สามารถปรับใช้แอปพลิเคชันแบบกระจายและ load balancing ข้ามเซิร์ฟเวอร์หลายเครื่อง เพิ่มประสิทธิภาพและความน่าเชื่อถือ
ด้วยสถาปัตยกรรมที่ยืดหยุ่นและมีประสิทธิภาพสูง Nginx ทำให้กลายเป็นหนึ่งในเว็บเซิร์ฟเวอร์และพร็อกซีที่ได้รับความนิยมสูงสุดที่ใช้กันอย่างแพร่หลายทั่วโลก ตอบสนองความต้องการที่เพิ่มขึ้นของการประมวลผลคำขอและข้อมูลบนอินเทอร์เน็ต