تم تصميم بنية Nginx لتحقيق أداء عالي واستقرار وقابلية التوسع. فيما يلي وصف تفصيلي للمكونات الرئيسية للهندسة المعمارية Nginx:
Master Process
هذه هي العملية الرئيسية Nginx ، المعروفة أيضًا باسم العملية الأم. تتمثل مسؤوليتها في إدارة عمليات العمال ومهام الإدارة المشتركة الأخرى. يقوم بقراءة master process التكوين ومعالجته ، ثم يقوم بإنشاء عمليات عاملة للتعامل مع الطلبات الواردة من العملاء.
Worker Process
بمجرد إنشائها بواسطة master process ، تصبح العمليات العاملة عمليات تابعة لـ Nginx. يمكن تكوين عدد العمليات العاملة لتلبية متطلبات الأداء والموارد للنظام. يعمل كل منهما worker process بشكل مستقل ، ولا يشترك في الذاكرة ، ولا يتواصل مباشرة مع بعضها البعض ، مما يعزز استقرار Nginx.
Event-driven Architecture
Nginx يستخدم event-driven architecture للتعامل مع الطلبات. بدلاً من استخدام مؤشرات ترابط منفصلة لكل طلب ، Nginx يستخدم وظائف غير متزامنة للتعامل مع الأحداث. يسمح ذلك لشخص واحد worker process بمعالجة طلبات متعددة بشكل متزامن ، مما يؤدي إلى تحسين موارد النظام وضمان الأداء العالي.
Event Module
Nginx يدعم مختلف event module للعمل مع نظام التشغيل والبنية التحتية للشبكة. تساعد هذه الوحدات على Nginx التفاعل مع النواة وتجنب الحظر والانتظار غير الضروريين ، مما يقلل الحمل على النظام.
Worker Connections
هذا هو عدد الاتصالات التي worker process يمكن لكل منها التعامل معها بشكل متزامن. يسمح هذا التكوين بتخصيص عدد الاتصالات لضمان الأداء الأمثل بناءً على موارد النظام وحركة مرور طلب العميل.
Proxy و Load Balancing
Nginx يمكن أن يعمل كخادم proxy ، مما يسمح له بتوجيه الطلبات من العملاء إلى خوادم التطبيقات الخلفية داخل النظام. يتيح ذلك نشر التطبيقات الموزعة load balancing وعبر خوادم متعددة ، مما يعزز الأداء والموثوقية.
بفضل بنيتها المرنة وعالية الأداء ، Nginx أصبحت واحدة من أكثر خوادم الويب والبروكسيات شيوعًا المستخدمة على نطاق واسع في جميع أنحاء العالم ، مما يلبي المتطلبات المتزايدة لمعالجة الطلبات والبيانات على الإنترنت.