17

Profiling ؟

أعتقد الأفضل استخدام إطار عمل ، أغلب أطر العمل تدعم قياس الأداء وتعطي تقارير مناسبة عن زمن التنفيذ مع قاعدة البيانات أو أي أمور أخرى

http://www.yiiframework.com/doc/guide/1.1/en/topics.logging

http://ellislab.com/codeigniter/user-guide/general/profiling.html

بإمكانك استخدام xdebug وإضافات خاصة ب php

http://www.php.net/apd

http://php.net/manual/en/book.xhprof.php

أحياناً بيئة العمل تقدم ميزة تقييم الأداء مثل Nusphere

http://www.nusphere.com/products/php_profiler.htm

ملاحظة أخيرة ، يجب أن يتم دراسة البرنامج وخطوات نفيذه.

بعض المشاكل تظهر من تكرار الإجرائية مثلاً

$x = getUserName();

echo "login user is " getUserName(());

نلاحظ هنا تم طلب التابع GetUseName مرتين ، وبالتالي تم تنفيذ العملية مرتين ، لو كان هذا التابع سيعيد نفس القيمة ، فمن الأفضل عمل caching تخزين القيمة وإعادتها ، يمكنك استخدام $_GLOBALS مثلاً ...

أيضاً غالباً يمكن توقع أي الإجرائيات تستهلك زمن تنفيذ أكثر بحكم المهم التي تقوم بها ، يمكنك ببساطة القيام بالتالي :

$then = microtime();

myFunc();

$now = microtime();

echo sprintf("Elapsed: %f", $now-$then); لمعرفة زمن التنفيذ

الأكواد بتنسيق أفضل ... عذراً حديثاً قرأت عن تنسيق التعليق في الموقع :)

$x = getUserName(); echo "login user is " getUserName(());

$then = microtime(); myFunc(); $now = microtime();

echo sprintf("Elapsed: %f", $now-$then);

تطوير الويب

مجتمع خاص بمناقشة وطرح المواضيع والقضايا العامة المتعلقة بتطوير الويب ولغاتها المختلفة

20.3 ألف متابع