لماذا يجب أن تركز على تحسين أداء Drupal باستخدام Nginx
نشرت: 2018-01-14نعلم جميعًا أن دروبال هو المكان الذي تلتقي فيه المرونة بالبساطة. تم تصميم نظام إدارة المحتوى ليكون الحل الأمثل للمستخدمين غير التقنيين ، دروبال هو نظام موحد يسعى جاهداً للحصول على نقاط القوة في نظام إدارة المحتوى وإطار عمل إدارة المحتوى. وبغض النظر عما يسعى منشئ المواقع إلى إنشائه (من موقع إخباري أو متجر على الإنترنت إلى شبكة اجتماعية أو موقع حكومي شديد التعقيد) ، فإن الأمر يتعلق فقط بدمج الوحدات المناسبة لتطوير دروبال بشكل مثالي. يُعرف Nginx بأنه خادم الويب الفائق القوة الذي يمكن استخدامه للتخزين المؤقت وتوازن التحميل وعكس الوكيل وغير ذلك الكثير لتحسين أداء موقع الويب. يمكن أن تؤدي مجموعة Drupal Nginx إلى زيادة الأداء. لنلقِ نظرة على سبب اختيار Nginx لمشروعك التالي في دروبال.
دروبال تعمل باستمرار على تحديث نفسها ، وأحدث إصدار لها هو دليل على كيفية تطور نظام إدارة المحتوى مفتوح المصدر هذا سريعًا إلى واحد من أكثر الأطر طلبًا (يستخدم ما يقرب من مليون موقع ويب دروبال 7 وفقًا لتقرير صادر عن Drupal.org). نسخة دروبال دروبال 8 جعلت مستخدميها على حافة مقاعدهم مع بعض الميزات الأكثر إثارة.
بعض ميزات دروبال 8 هي:
- خدمة الويب الجاهزة: لقد ولت الأيام التي كانت فيها مواقع الويب مخصصة فقط لسطح المكتب وكانت خدمات الويب تُستخدم فقط لمواقع الويب التي تستخدم خدمة من أنظمة أخرى. مع وجود مجموعة متنوعة من الأجهزة في الصورة ، أصبحت خدمات الويب في العالم الحالي أكثر أهمية من أي وقت مضى. بينما يتم دعم خدمات الويب من خلال وحدة طرف ثالث في دروبال 7 ، فقد تم تضمينها في دروبال 8 كور.
- تحسينات الأمان: لطالما كان الأمان مصدر قلق ، ومع إضافة ميزات جديدة ، ابتكر دروبال 8 طرقًا لجعل الأنظمة أكثر أمانًا.
- أسهل وأسرع: مع دروبال 8 ، تكون واجهة دروبال API مريحة تمامًا ، مما يسهل على المطور استخدام Angular.js و Ember.js والعديد من أدوات العرض الأخرى دون الكثير من المتاعب.
- تحسينات الأجهزة المحمولة: كما تحدثنا سابقًا ، فإن الأجهزة المحمولة هي القوة الدافعة في عالم اليوم. يوفر دروبال 8 دعمًا كاملاً لقوالب مواقع الجوّال مصحوبة بإدارة خلفية سهلة من جهاز محمول.
نظرًا لأن معظم هذه الميزات تدعم بعضًا من أكبر المواقع وأكثرها تعقيدًا والتي تجذب الكثير من حركة المرور وعرضة لمشاكل الأداء ، يصبح من المهم التعامل مع هذه المشكلات في أقرب وقت ممكن لأن القوة الدافعة في نمو حركة المرور لا تقتصر على العملاء فقط والخوادم ولكن أيضًا بين الخوادم الخلفية. يمكن أن يؤدي تطبيق Nginx مع موقع ويب Drupal 8 الخاص بك إلى حل جميع المشكلات المتعلقة بالخادم ورفع أداء الموقع.
هندسة الموقع مع Drupal Nginx
تستخدم مجموعة كبيرة من مواقع ويب Drupal في البداية خادم Apache HTTP كخادم الويب الخاص بهم وحقيقة أن الإرشادات الخاصة بتكوينه متوفرة على نطاق واسع تجعله الخيار الأول بين العديد من مالكي مواقع الويب. ولكن مع نمو موقع الويب وبدء القيادة في المزيد من حركة المرور ، هذا عندما ينتقل الأشخاص إلى خادم NGINX. في هذه المرحلة ، مع وجود صعوبات في دعم أكثر من 10000 اتصال في وقت واحد بالخادم بأكمله الذي يتوقف عن العمل أو يتعطل ، يشترك دروبال وأباتشي في المشكلات التي يصعب التغلب عليها.
مع تعرض الموقع للخطر ، دروبال 8 NGINX هو الخيار المفضل من قبل المنظمات لتحقيق الاستقرار في بنية الموقع. بدلاً من تغيير الخوادم والتسبب في حدوث مشكلات ، يمكن اتخاذ عدة خطوات لمعالجة مثل هذه المشكلات المتعلقة بالأداء مع نمو الموقع.

- NGINX كخيار أول لخادم الويب الخاص بموقع دروبال الخاص بك يحسن الأداء ويقلل بشكل حاد من استخدام الذاكرة.
- NGINX هي واحدة من أكثر خوادم الوكيل العكسي شيوعًا لعدد من مواقع دروبال حيث يمكنها التعامل مع حركة المرور على الإنترنت وتقليل العبء على خادم التطبيق الخاص بك.
قاعدة بيانات للانترنت
الإصلاح السريع الذي يمكن أن يهتم بالأداء والأمان والمرونة لموقع Drupal الخاص بك هو الانتقال من Apache إلى NGINX كخادم ويب لموقعك. المشكلة الشائعة التي تطارد معظم خوادم الويب هي مشكلة C10K - الصعوبة التي تواجهها خوادم الويب في دعم الاتصالات المتزامنة (عادةً لا تزيد عن 10000 اتصال في وقت واحد). تم تصميم NGINX لحل هذه المشكلة بالذات. من خلال القدرة على تشغيل حلقة حدث مستمرة تتعامل مع الطلبات عند حدوثها ، دون تخصيص الموارد لمقدمي الطلبات ، فإن Drupal NGINX يزيل العبء الذي تتكبده عملية إجراء عملية جديدة لكل اتصال جديد.
عكس الخادم الوكيل مع دروبال 8 Nginx
الخادم الوكيل العكسي ليس مثل خوادمك المعتادة. يتلقى هذا الخادم الطلبات من المتصفحات وبدلاً من معالجتها على الفور ، يفحص كل طلب ويقرر الإجراء الذي يجب اتخاذه بشأنه: إما تنفيذ الطلب بمفرده أو لإرساله إلى خادم آخر للوفاء به.
يعد نشر مثل هذا الخادم الخطوة الأولى في إنشاء بنية موقع تتيح المرونة والتكرار وتحسين الأمان وسلة مليئة بالأشياء الجيدة الأخرى. أحد الأسباب الرئيسية وراء احتمال قيام خادم وكيل عكسي بمساعدة أداء موقع الويب هو أن الاتصال بين خوادم الويب أسرع من الاتصال عبر الإنترنت. وهذا الاتصال مع خوادم الويب الأخرى في خدمة الوكيل العكسي مجاني في الأساس.
وبالتالي ، من خلال إضافة خادم وكيل عكسي ، يكون موقع Drupal الخاص بك خاليًا من التعامل مع حركة المرور على الإنترنت بالكامل مباشرة. يعتني هذا الخادم على الفور بالموقع الذي ينهار تحت ضغط حركة المرور الهائلة ومشكلات الأمان ومشكلات الأداء. مع إدخال المرونة الجديدة في بنية الموقع ، يسمح خادم وكيل عكسي بإمكانيات ووظائف جديدة يمكن تشغيلها بكفاءة دون التأثير على خادم التطبيق.
خوادم تطبيقات متعددة وموازنة الحمل
من المستحيل للغاية الحصول على أداء أفضل باستخدام خادم تطبيق واحد. لكن الخوادم الأكبر والأسرع قد تكون باهظة الثمن ولأن الجهاز الفردي دائمًا ما يكون له أداء متأصل ، فأنت بحاجة إلى ترقية أو استبدال الجهاز الحالي (عملية شديدة الاضطراب) لمزيد من الأداء. هذا هو المكان الذي يظهر فيه خادم وكيل عكسي في الصورة. يسمح هذا الخادم باستخدام خوادم تطبيقات متعددة مما يضمن أداء Drupal أفضل بمجرد إضافة خوادم إضافية إلى النظام. يمكن تسهيل عملية إضافة الخوادم وإزالتها باستخدام أدوات البرامج المناسبة مثل NGINX Plus والتي تقلل من وقت التوقف إلى حد كبير.
يعني وجود خوادم تطبيقات متعددة أنه يجب أن تكون هناك تقنية لتحديد الخادم الذي يتلقى الطلب التالي. تتراوح التقنيات من أسلوب بسيط إلى نهج معقد حيث يتم فحص كل خادم بواسطة النظام لمعرفة أيهما أقل انشغالًا قبل إرسال الطلب. يُعرف هذا باسم موازنة التحميل. يدعم خادم NGINX و NGINX Plus خمس تقنيات لموازنة الحمل تساعد في تحسين أداء دروبال.
تحقق من ملف تكوين Drupal 8 Nginx الرسمي الذي أوصى به Nginx لتبدأ في تنفيذه على موقع Drupal 8 الخاص بك.
