سؤال

لا أحد لديك خبرة في العمل مع PHP مسرعات مثل MMCache أو زند مسرع?أود أن أعرف إذا كنت تستخدم أي من هذه يجعل PHP مماثلة أسرع ويب-التقنيات.أيضا ، هناك مقايضات استخدام هذه ؟

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

المحلول

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

فعلت بعض المعايير منذ بعض الوقت و يمكنك العثور على النتائج في بلدي بلوق (في الألمانية على الرغم من).النتائج الأساسية:

زند محسن وحدها لا تساعد على الإطلاق.فعلا كتاباتي كانت أبطأ من دون محسن.

عندما يتعلق الأمر إلى مخابئ:* أسرع: eAccelerator * XCache * APC

و:كنت لا ترغب في تثبيت شفرة تشغيل ذاكرة التخزين المؤقت!

على سبيل المثال:النص البديل http://blogs.interdose.com/dominik/wp-content/uploads/2008/04/opcode_wordpress.png

هذا هو مدة استغرق الأمر إلى استدعاء وورد الصفحة الرئيسية 10.000 مرة.

تحرير: راجع للشغل, eAccelerator يحتوي على محسن نفسها.

نصائح أخرى

MMCache تم إيقافها.أوصي إما http://pecl.php.net/package/APC أو http://xcache.lighttpd.net/, وكلاهما أيضا تعطيك متغير التخزين (مثل Memcache).

على حد سواء مثيرة للاهتمام وسوف توفر زيادة السرعة لأنها ترجمة التعليمات البرمجية المصدر إلى تمثيل ثنائي ثم أعدم من قبل PHP المحرك.

أي ضخمة الموقع يعمل مع PHP (Facebook على سبيل المثال) يتم تشغيل بعض نوع من شفرة تشغيل ذاكرة التخزين المؤقت نظام مثل MMCache.

المشكلة هي أنها ليست من السهل جدا لاقامة اعتمادا على النظام الخاص بك.

اعتمادا على كيفية الكثير من التعليمات البرمجية PHP إعدامه و كم التنفيذ يأخذ أنها يمكن أن تكون كبيرة حقا الفوز.فإنه بالتأكيد لن يضر, ولكن المكسب سوف نعتمد كثيرا على حيث وقتك تنفق حاليا.

راجع للشغل mmcache وقد توالت في مختلف المشروع الآن ، نسيت اسمه ولكن جوجل سوف اقول لكم.

يمكنني استخدام APC على خوادم الإنتاج و أنه يعمل بشكل جيد جدا في الخروج من مربع.ترجمة وإضافته إلى PHP و ليس هناك الكثير من التغيير والتبديل من اليسار إلى القيام به من أجل ذلك.لقد تحقق كل مرة واحدة في حين مجرد استعراض احصائيات ولكن منذ أن كنت تستخدم MVC الكثير كافة الملفات الرئيسية (الموجهات, تحكم, الخ) نادرا ما تتغير يوما بعد يوم ، بحيث يكون رمز يبقى جمعت ويعمل جميلة بكفاءة.

حاليا نحن نستخدم apc وحرة كان مجرد سد واللعب على حياتنا الخوادم.قدمت أداء ضخمة تزيد على موقعنا ، خاصة أن حجم المشروع زادت.لدي أيضا apc.القانون الأساسي تعطيل لذلك لا تحقق إذا كان رمز تم تحديث, لذلك كلما كنا بحاجة إلى تحديث المدونة على الموقع مباشرة ونحن إعادة تشغيل أباتشي.

أنا استخدام آسيا والمحيط الهادئ ، و يمكن أن يشهد أنه يمكن أن تقلل بشكل كبير من وحدة المعالجة المركزية و I/O الحمل على تطبيق الملقم إذا كنت على ذاكرة التخزين المؤقت-معدل ضرب.هذا ليس فقط يوفر لك من الاضطرار إلى تجميع ، فإنه يمكن أن يوفر لك من الاضطرار إلى قراءة ملفات php من القرص على الإطلاق.(أيعلى bytecodes تقدم مباشرة من الذاكرة الرئيسية ، لذلك بسرعة فائقة) أنه يخفض السرعة إلى تقديم صفحة واحدة ، ويزيد من الطلبات في الثانية الخادم الخاص بك يمكن التعامل معها.

إذا كنت تستخدم ريدهات أو CentOS, تثبيت APC هو السوبر بسيطة:

yum install php-devel httpd-devel php-pear
pecl install apc 
echo "extension=apc.so" > /etc/php.d/apc.ini
# if you're using SELinux:
chcon "system_u:object_r:textrel_shlib_t" /usr/lib/php/modules/apc.so
/etc/init.d/httpd restart

أنت سألت عن سلبيات.الجانب السلبي الوحيد هو أنه يتطلب بعض الذاكرة.الافتراضي على APC هو 30MB ، ولكن يمكن تعديلها ، وتكلفة قليلا من الذاكرة أكثر من يدفع عن نفسه مع زيادة سرعة و معدل الاستجابة.

BlaM اختبار شملت جميع DB المكالمات التي تتم من خلال وورد.عندما كنت صنع أقل من DB المكالمات, سوف نرى أداء مكاسب شفرة تشغيل مخابئ تكون أكثر دراماتيكية.

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

على الجانب السلبي, بالتأكيد رأينا بعض التخزين المؤقت المسائل (حيث سوف يكون رمز التغييرات ، ولكن النسخة المترجمة تزامن مع التغيير لسبب أو آخر).أتخيل تلك المشاكل المحتمل أن يتم تسويتها حتى الآن.

على أي حال, أنا لا أملك أي الثابت أرقام المقارنة ، وبالتأكيد لم أكتب نفس النظام في بيئات مختلفة وعلى سبيل المقارنة ، ولكن بالنسبة للغالبية العظمى من نظم PHP لن أقتلك أداء الحكمة.

هل تفقدت Phalanger?وهي تجمع PHP .صافي رمز.هنا بعض المعايير والتي تظهر أنه يمكن أن تحسن بشكل كبير أداء.

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