اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

أشهر تقنيات الـ Caching المستخدمة مع PHP بتعتمد على نوع البيانات التي تريد تخزينها وسيناريو الاستخدام. ويوجد أكثر من تقنية مشهورة شغالين بيها مع PHP:

OPcache هذا مثل محسن للـ opcode مدمج مع PHP. بيشتغل إنه يخزن النسخ المترجمة من ملفات PHP في الرام (الذاكرة)، وهذا يقلل من وقت تنفيذ الأكواد لأن مفيش احتياج إن الملفات تترجم كل مرة تتطلب فيها. وهذا بيحسن الأداء بشكل كبير.

فعال جدا في تحسين أداء تطبيقات PHP، وسهل في الإعداد والاستخدام، وبينفع مع معظم المواقع والتطبيقات.

Memcached هذا نظام تخزين مؤقت موزع في الرام (الذاكرة)، وبيتستخدم لتخزين البيانات المؤقتة وتخفيف الحمل على قاعدة البيانات. ممكن تخزن به جلسات المستخدم، نتائج الاستعلامات، أو أي بيانات اخري تريد تخزينها بشكل مؤقت.

سريع جدا، ويدعم التوزيع على أكتر من سيرفر، ومستخدم في التطبيقات الكبيرة التي عليها ضغط.

Redis هذا مثل قاعدة بيانات في الرام (in-memory data store) بتشتغل كمخزن بيانات، وCache، ووسيط رسائل. بيدعم أنواع كثيره من البيانات مثل السلاسل والقوائم والمجموعات.

بيدعم ميزات متقدمة مثل استمرارية البيانات (persistence)، والنسخ الاحتياطي، وبيتعامل مع البيانات المعقدة. Redis يعمل في التطبيقات التي محتاجة أداء عالي.

Varnish هذا مسرع HTTP بيشتغل كطبقة بين المستخدم والسيرفر، وبيتخزن به محتوى HTTP مؤقتا في الرام لتحسين سرعة تحميل الصفحات.

فعال في تسريع تحميل الصفحات، وبيقلل الحمل على السيرفر، وبيستخدم بشكل شائع في المواقع اللي عليها حركة كبيرة.

الخلاصه إذا كنت محتاج تحسين أداء تنفيذ PHP نفسه، إذا OPcache هو الأنسب.

إذا كنت محتاج تخزين مؤقت للبيانات بشكل عام (مثل نتائج الاستعلامات أو جلسات المستخدم)، اذا Memcached أو Redis هما الأنسب.

إذا كنت محتاج تسريع تحميل صفحات الويب من خلال تخزين مؤقت لمحتوى HTTP، اذا Varnish سيكون خيار مناسب.

 

  • 1
نشر

في حال تريد ترشيح تقنية واحدة فقط للعمل بها في أغلب مشاريعك فستكون Redis بلا جدال ومطلوبة من ضمن مهارات العمل كمطور واجهة خلفية لذا هي تستحق وقتك بالطبع ومتنوعة الاستخدام ولديها توافق ممتاز مع PHP وستجد إطار مثل Laravel يوفر دعمًا مباشر للعمل من خلالها بسهولة ومناسبة للمشاريع الصغيرة والكبيرة.

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...