سؤال

أنا أفكر في هندى بلدي التطبيق على شبكة الإنترنت النموذجيه الحل وأنا الآن قلقة مع أدائه ضد عادي PHP.

هندي يقول الموقع أنه يجب أن يكون نفسه ، ومع ذلك ، لم أكن قادرة على العثور على أي شخص القيام الحقيقي القياس لإثبات بيان حق أو خطأ.

هل أي شخص القيام ببعض قياس هندى مقابل عادي PHP?أو ربما تأتي عبر بعض الموارد على مثل هذه الاختبارات ؟

شكرا

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

المحلول

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

نصائح أخرى

وأنت قد ترغب أيضا في اتخاذ في مكتبة قالب جديد مشابه لهندى يسمى Dwoo

وفقط وجدت <لأ href = "http://lutt.se/blog/2006/08/13/why-template-engines-like-smarty-sucks-in-php.html" يختلط = "نوفولو noreferrer" > هذا مؤشر بسيط جدا - بروبابلي يست كبيرة جدا

هنا آخر النموذجيه الحل XSLT هنا هي بلدي معايير واحدة من صفحات تحويل (في صفحة بسيطة):

// with smarty (baseline)
    0.014 seconds

// with xsl/xslt-clientside
    0.008 seconds
    42% decrease in server stress

// with xsl/xslt-serverside
// this process would only be done if the users browser doesn't support client-side XSLT
    0.016 seconds
    14% increase in server stress

ليس للجميع ولكن إذا كان الأداء هو الشاغل الرئيسي الخاص بك :)

على أعلى من أن تسمح العميل إلى ذاكرة التخزين المؤقت القالب الخاص بك.

هنا مثال على ما أقوم به (هذا هو واحد من بلدي المواقع): http://pixao.com

و هنا مثال آخر من هذا على أكبر نطاق الموقع: http://worldofwarcraft.com

حتى الآن لم تصل الى أي عرض سدادات

هنا قالب المحرك القياسي الذي الاختبارات PHP مقابل هندى وغيرها الكثير قالب محركات http://www.raintpl.com/PHP-Template-Engines-Speed-Test/

  • للتعيين غصين هو أسرع ، ترجمة قالب html إلى فصول ، لذلك أيضا أسرع في تنفيذ أكثر من PHP وتشمل!IMHO الثقيلة (العديد من الملفات) و تعقيد, ولكن سريع جدا!

  • بالنسبة حلقات أسرع PHP تشمل ، وبعد وقت قصير هناك المطر الذي هو من السهل جدا صغيرة (1 ملف) وسريعة.

وهندى يولد شفرة PHP لكافة الملفات القالب عندما كنت استخدم لأول مرة، شريطة أن يكون لديك ذلك إعداد بشكل صحيح، ويستخدمها عندما يكون ذلك ممكنا بدلا من تحليل القوالب مرة أخرى.

واعتدت عليه لفترة من الوقت، وكان سريع بما فيه الكفاية، ولكن في النهاية أنا تبادلت بها لملفات PHP سهل لأنه كان قليلا الحد (الكثير من PHP4 المذهبين).

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

ذلك يعتمد على كيفية استخدام هندى بسبب تدفق صفحاتك يمكن تغيير

الكلاسيكية عادي PHP التدفق:

  • الإخراج
  • التعامل مع $_REQUEST البيانات
  • الإخراج
  • التعامل مع استعلامات قاعدة البيانات
  • الإخراج
  • التعامل مع $_REQUEST البيانات
  • الإخراج
  • ...

كلاسيك هندى التدفق:

  • التعامل مع جميع $_REQUEST البيانات
  • التعامل مع جميع استعلامات قاعدة البيانات
  • إخراج جميع

إذا عادي PHP أخذت 1.0 ثانية على هذه الصفحة هندى الصفحة أيضا يأخذ 1.0 ثانية.ولكن إذا افترضنا أن كل قاعدة البيانات $_request handeling يأخذ 0.7 ثانية.عادي PHP يبدأ الانتاج مباشرة بينما هندى يبدأ نسخة outputing بعد 0.7 ثانية.لذلك المتصفح يمكن البدء في تحميل صفحات الأنماط والصور بشكل أسرع.لا الإخراج أيضا يعني على زر "توقف" ليس له أي تأثير.

ومع ذلك في هندى يمكنك استدعاء وظائف وأساليب من داخل القالب.تأخير الجزء البطيء إلى البيانات المطلوبة.

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

وبناء على تجربتي الخاصة والمعايير الرسمية، هندى لا في حد ذاته يسبب أي تخفيضات الأداء الرئيسية. ومع ذلك، عندما تحصل في كتابة الإضافات المخصصة، سارت الأمور إلى أسفل.

ويتم تصنيف قالب هندى ومؤقتا كما PHP، ولكن البرنامج المساعد مخصصة دائما تحميل وتنفيذها في وقت ودائما أبطأ من تشغيل نفس رمز في ملف PHP سهل القديمة. أنت لن تلاحظ هذا كثيرا مع السلسلة المخصصة التنسيق المساعد، ولكن سترى بالتأكيد عند القيام استعلامات قاعدة البيانات في البرنامج المساعد.

وعموما، أنا أوصي هندى. الحصول على عرض من PHP جعلت متاحة لدينا أكثر من ذلك بكثير للقراءة وللصيانة. لديك فقط للتأكد من كنت حذرا حول ما كنت وضعت في الإضافات.

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