دليل خطوة بخطوة لتخزين الكاش في الخادم باستخدام إنجن إكس وبي إتش بي

تخزين الكاش في الخادم باستخدام nginx وphp ubuntu debian centos redhat

يعتبر تخزين الكاش في الخادم تقنية حاسمة لتحسين أداء الموقع الإلكتروني من خلال تقليل عبء الخادم وتحسين أوقات الاستجابة. في هذا الدليل، سنوضح لك كيفية تنفيذ تخزين الكاش في الخادم باستخدام Nginx وPHP، خطوة بخطوة.

الخطوة 1: المتطلبات الأساسية

قبل البدء، تأكد من تثبيت Nginx وPHP على الخادم الخاص بك. يمكنك تثبيتهما على Ubuntu/Debian أو CentOS/RHEL باستخدام الأوامر التالية:

Ubuntu/Debian:

$ sudo apt update
$ sudo apt install nginx php-fpm

CentOS/RHEL:

$ sudo yum install epel-release
$ sudo yum install nginx php-fpm

الخطوة 2: الإعداد الأساسي لـ Nginx

بمجرد تثبيت Nginx وPHP، قم بتهيئة Nginx لتقديم ملفات PHP. افتح ملف إعدادات Nginx الخاص بك، والذي يكون عادةً في /etc/nginx/nginx.conf أو /etc/nginx/sites-available/default، وأضف أو عدل ما يلي داخل كتلة الخادم الخاصة بك:

location~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.4-fpm.sock; # قم بالتعديل حسب الإصدار المطلوب
}

بعد ذلك، أعد تشغيل Nginx لتطبيق التغييرات:

$ sudo systemctl restart nginx

الخطوة 3: إعداد ذاكرة التخزين المؤقت FastCGI

تعتبر ذاكرة التخزين المؤقت FastCGI آلية تخزين مؤقت مدمجة قوية في Nginx. قم بتمكينها من خلال الخطوات التالية:

الخطوة 1: افتح تكوين كتلة خادم Nginx:

$ sudo nano /etc/nginx/sites-available/default

الخطوة 2: أضف التكوين التالي داخل كتلة الخادم الخاصة بك:

location~ \.php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.4-fpm.sock; # قم بالتعديل حسب الإصدار المطلوب# تفعيل ذاكرة التخزين المؤقت FastCGIfastcgi_cache cache_name;  
    fastcgi_cache_key"$scheme$request_method$host$request_uri";
    fastcgi_cache_valid2003021h;
    fastcgi_cache_use_stale updating error timeout invalid_header http_500;
    # تعريف منطقة الذاكرة المؤقتة وحجمهاfastcgi_cache_path /var/cache/nginx levels=1:2 keys_zone=cache_name:10m max_size=100m;
        
    # رؤوس ذاكرة التخزين المؤقت لإضافتها إلى الاستجابة add_header X-FastCGI-Cache $upstream_cache_status;
}

الخطوة 3: احفظ الملف واخرج من محرر النصوص.

الخطوة 4: اختبر تكوين Nginx للتحقق من وجود أخطاء صياغة:

$ sudo nginx -t

الخطوة 5: إذا لم توجد أخطاء، أعد تحميل Nginx لتطبيق التغييرات:

$ sudo systemctl reload nginx

الخطوة 4: مستويات الذاكرة المؤقتة والتكوين

يمكنك تخصيص مستويات الذاكرة المؤقتة بناءً على أداء الخادم واحتياجات التخزين المؤقت الخاصة بك. وتشمل مستويات الذاكرة المؤقتة الشائعة levels=1:2 و levels=1:2:2 و levels=1:2:4. وفيما يلي كيفية تغييرها:

الخطوة 1: افتح تكوين كتلة الخادم Nginx:

$ sudo nano /etc/nginx/sites-available/default

الخطوة 2: عدّل توجيه fastcgi_cache_path لتعيين مستوى الذاكرة المؤقتة المطلوب. على سبيل المثال:

fastcgi_cache_path /var/cache/nginx levels=1:2:4 keys_zone=cache_name:10m max_size=100m; 

الخطوة 3: احفظ الملف واخرج من محرر النصوص.

الخطوة 4: اختبر تكوين Nginx للتحقق من وجود أخطاء صياغة:

$ sudo nginx -t

الخطوة 5: إذا لم توجد أخطاء، أعد تحميل Nginx لتطبيق التغييرات:

$ sudo systemctl reload nginx

الخطوة 5: إفراغ الذاكرة المؤقتة وانتهاء الصلاحية

إدارة الذاكرة المؤقتة أمر حاسم للحفاظ على نظام تخزين مؤقت فعال. يمكنك حذف الذاكرة المؤقتة يدويًا باستخدام الأمر التالي:

$ sudo rm -r /var/cache/nginx/cache_name/*

لإفراغ الذاكرة المؤقتة التلقائي، فكر في دمج منطق إبطال الذاكرة المؤقتة في تطبيقك. بدلاً من ذلك، استكشف أدوات خارجية مثل وحدة Nginx Cache Purge لإدارة الذاكرة المؤقتة الأكثر تقدمًا.

الخطوة 6: الرصد والضبط الدقيق

6.1. رصد أداء الذاكرة المؤقتة

من الأساسي رصد أداء الذاكرة المؤقتة في الخادم بانتظام للتأكد من عملها بكفاءة. يمكنك استخدام أدوات مثل وحدة الحالة المدمجة في Nginx أو حلول الرصد الخارجية. وفيما يلي كيفية رصد أداء الذاكرة المؤقتة وما يجب البحث عنه:

الخطوة 1: قم بتمكين وحدة حالة Nginx عن طريق إضافة ما يلي إلى تكوين كتلة الخادم Nginx:

location /nginx_status {
    stub_statuson;
    allow127.0.0.1; # قم بالتعديل حسب عنوان IP أو شبكة الخادمdeny all; 
}

الخطوة 2: احفظ الملف واخرج من محرر النصوص.

الخطوة 3: اختبر تكوين Nginx للتحقق من وجود أخطاء صياغة:

$ sudo nginx -t

الخطوة 4: إذا لم توجد أخطاء، أعد تحميل Nginx لتطبيق التغييرات:

$ sudo systemctl reload nginx

الخطوة 5: ادخل إلى صفحة حالة Nginx باستخدام متصفح ويب أو أدوات مثل curl:

$ curl http://localhost/nginx_status

ابحث عن المقاييس الرئيسية مثل:

  • الاتصالات النشطة
  • عدد طلبات الخادم المقبولة والمنفذة
  • معدل الإصابات في الذاكرة المؤقتة
  • إخفاقات الذاكرة المؤقتة
  • استخدام الذاكرة

6.2. الضبط الدقيق لإعدادات الذاكرة المؤقتة

بناءً على بيانات الرصد التي تم جمعها، من الأساسي ضبط إعدادات الذاكرة المؤقتة الخاصة بك بدقة للحفاظ على الأداء المثالي. وفيما يلي بعض التعديلات التي قد ترغب في النظر فيها:

  • أحجام الذاكرة المؤقتة: إذا لاحظت معدلات إخراج عالية من الذاكرة المؤقتة أو مشاكل في الذاكرة، قم بضبط حجم الذاكرة المؤقتة (على سبيل المثال، زيادة max_size في fastcgi_cache_path).
  • مستويات الذاكرة المؤقتة: اعتمادًا على موارد الخادم الخاص بك وأنماط الحركة، قم بتعديل مستويات الذاكرة المؤقتة في fastcgi_cache_path لتحسين التنظيم أو تقليل استخدام الذاكرة.
  • أوقات انتهاء صلاحية الذاكرة المؤقتة: قم بضبط دقيق لأوقات انتهاء صلاحية الذاكرة المؤقتة (على سبيل المثال، fastcgi_cache_valid) للموازنة بين الحداثة وكفاءة الذاكرة المؤقتة.

تذكر اختبار ورصد آثار هذه التغييرات للتأكد من مطابقتها لأهداف أداء الموقع الإلكتروني الخاص بك.

6.3. استكشاف المشاكل الشائعة وإصلاحها

عند حدوث مشاكل في تخزين الكاش في الخادم، من الأساسي تشخيص هذه المشاكل وحلها بسرعة. وقد تشمل المشاكل الشائعة ما يلي:

  • مفاتيح الذاكرة المؤقتة المُعدّة بشكل خاطئ: راجع تكوين fastcgi_cache_key الخاص بك للتأكد من توليده لمفاتيح ذاكرة مؤقتة فريدة لطلبات مختلفة.
  • مشاكل في إفراغ الذاكرة المؤقتة: تحقق من منطق أو أدوات إفراغ الذاكرة المؤقتة الخاصة بك للتأكد من إبطالها للمحتوى المخزّن في الذاكرة المؤقتة عند الحاجة.
  • إعدادات انتهاء صلاحية الذاكرة المؤقتة غير صحيحة: راجع توجيهات fastcgi_cache_valid الخاصة بك للتأكد من مطابقتها لتوقعات تحديث محتواك.

لاستكشاف الأخطاء وإصلاحها، راجع سجلات الأخطاء في Nginx (/var/log/nginx/error.log) وسجلات الوصول (/var/log/nginx/access.log) للحصول على رؤى حول مشاكل محددة. بالإضافة إلى ذلك، استكشف المنتديات والمجتمعات عبر الإنترنت للعثور على حلول لتحديات التخزين المؤقت الشائعة.

الخلاصة

من خلال اتباع هذه الخطوات، لقد نفذت بنجاح تخزين الكاش في الخادم باستخدام Nginx وPHP. ستحسّن هذه التقنية الأداء العام لموقعك الإلكتروني بشكل كبير، وتقلل من عبء الخادم، وتوفر تجربة أسرع للمستخدمين. تذكّر أن التخزين المؤقت يتطلب رصدًا وضبطًا دقيقًا بانتظام لضمان استمراره في تحقيق نتائج مثالية مع تطور ونمو موقعك الإلكتروني. تخزين مؤقت سعيد!

LEAVE A COMMENT