سؤال

أريد قياس PHP مقابل Pylons.أريد أن تكون المقارنة بين الاثنين متساوية قدر الإمكان، لذا إليك ما توصلت إليه:

  • PHP 5.1.6 مع APC، باستخدام قالب ذكي يتصل بقاعدة بيانات MySQL
  • Python 2.6.1، باستخدام Pylons مع قالب mako الذي يربط نفس قاعدة بيانات MySQL

هل هناك أي شيء يجب أن أغيره في هذا الإعداد لجعله مقارنة أكثر عدالة؟

سأقوم بتشغيله على خادم احتياطي لا يوجد به أي نشاط تقريبًا، وذاكرة الوصول العشوائي (RAM) سعة 2 جيجا بايت و4 مراكز.

هل هناك أي اقتراحات حول الكيفية التي ينبغي لي أو لا ينبغي لي قياسها؟أخطط لاستخدام ab للقيام بالقياس الفعلي.

متعلق ب

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

المحلول

إذا كنت لا تستخدم ORM في PHP، فيجب عليك عدم استخدام SQLAlchemy ORM أو لغة SQL-Expression أيضًا ولكن استخدم أوامر SQL الأولية.إذا كنت تستخدم APC، فيجب عليك التأكد من أن Python لديه امتيازات الكتابة إلى المجلد الذي يوجد به تطبيقك، أو أن ملفات .py تم تجميعها مسبقًا.

أيضًا، إذا كنت تستخدم ذاكرة التخزين المؤقت الذكية، فكر في تمكين ذاكرة التخزين المؤقت Mako أيضًا من أجل العدالة.

ومع ذلك، هناك كمية الصيد:محول Python MySQL سيء للغاية.بالنسبة لاتصالات قاعدة البيانات، من المحتمل أن تلاحظ إما بطء الأداء (إذا كان SQLAlchemy يقوم بفك تشفير Unicode لنفسه) أو أنه يتسرب من الذاكرة (إذا كان محول MySQL يفعل ذلك).

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

لذا:لا يبدو أن هناك طريقة عادلة لمقارنة PHP وPylons :)

نصائح أخرى

  1. إصدار PHP الخاص بك قديم، PHP موجود في المنطقة 5.2.x لفترة من الوقت وعلى الرغم من عدم وجود تحسينات هائلة، إلا أن هناك تغييرات كافية أود أن أقول إن اختبار أي شيء أقدم هو مقارنة غير عادلة.

  2. PHP 5.3 على وشك أن يصبح نهائيًا ويجب عليك تضمين ذلك في معاييرك حيث أن هناك تحسينات هائلة على PHP 5.x بالإضافة إلى كونه الإصدار الأخير من 5.x، إذا كنت تريد حقًا تقسيم الشعر، فإن PHP 6 هو أيضًا في ألفا/بيتا وهذا إصلاح شامل أيضًا.

  3. يمكن أن تكون مقارنة اللغات المختلفة أمرًا مثيرًا للاهتمام، لكن لا تنس أنك تقارن التفاح بالبرتقال، وأكبر عنق الزجاجة في أي تطبيق 2/3/N-Tier هو انتظار الإدخال/الإخراج.لذا فإن العامل الأكبر هو سرعة قاعدة البيانات الخاصة بك، مقارنة PHP وPython VS ASP.Net من حيث السرعة فقط لا معنى لها حيث سيتم تنفيذ الثلاثة جميعهم في أقل من ثانية واحدة ولكن مع ذلك يمكنك بسهولة الانتظار لمدة 2-3 ثوانٍ لاستعلام قاعدة البيانات الخاصة بك، اعتمادًا على على أجهزتك وما تفعله.

  4. إذا كنت قلقًا بشأن ما هو الأسرع، فأنت تتبع نهجًا خاطئًا تمامًا لاختيار النظام الأساسي. وهناك مسائل أهم مثل (غير مرتبة):

    أ.ما مدى سهولة العثور على المطورين المهرة في تلك المنصة

    ب.كم تكلفة هؤلاء المطورين المهرة

    ج.ما مقدار عائد الاستثمار الذي تقدمه اللغة؟

    د.ما مدى ثراء اللغة؟

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