سؤال

لدي هذا التطبيق مكتوب في PHP ، وأنا أفكر في استخدام EACCELERATOR لتحسين التطبيق. معضلة بلدي هي أن هذا التطبيق يعمل مع بيانات في الوقت الفعلي (يوميًا ، يوجد حوالي 6 إلى 8 ملايين سجل مدرج).

حتى الآن لم أستخدم أي أداة تحسين لتسريع تطبيقي. لذا فإن سؤالي هو ، هل سيتسبب eaccelerator في أي مشاكل في البيانات في الوقت الفعلي (مثل عرض البيانات القديمة بدلاً من البيانات الحالية)؟

هل كانت مفيدة؟

المحلول

رقم! من http://eaccelerator.net/ (تركيزي):

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

يقوم Eaccelerator بتحسين ملفات PHP الخاصة بك وتخزينها (وبالتالي التخلص من معظم النفقات العامة المعتادة عند تجميع ملفات PHP ثابت لكل طلب). البيانات الديناميكية (مثل DB ، نظام الملفات ، Ressources عن بُعد) ليس مخزنة مؤقتًا (على الأقل ، ليس بواسطة eaccelerator). لذلك ، ستظل بياناتك "جديدة" من Ressource المطلوبة.


إذا ، في وقت لاحق من الزمن ، تحتاج إلى تخزين (بعض) البيانات في الوقت الفعلي (مما يجعلها ليست "في الوقت الفعلي" بالكامل) ، فيمكنك إلقاء نظرة على التقنيات مثل memcached. تم تصميم هذا خصيصًا "... لتقليل عدد المرات ، يجب قراءة مصدر البيانات الخارجي (مثل قاعدة البيانات أو API)."

نصائح أخرى

إذا ، في مرحلة لاحقة من الزمن ، ، تحتاج إلى تخزين (بعض) البيانات في الوقت الفعلي (مما يجعلها ليست "في الوقت الفعلي" بالكامل) ، فيمكنك إلقاء نظرة على التقنيات مثل memcached.

يمكنك أيضا استخدام eaccelerator لهذا الغرض. انظر الوظيفة eaccelerator_put () و eaccelerator_get () هنا.

تعديل: مؤسف جدا, ، هذه الوظائف التي تمت إزالتها من أحدث إصدار من Eaccelerator 0.9.6.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top