اندازهگیری زمان اجرا و حافظه ی اشغال شده توسط برنامه php
در هر بازدید از سایت و پردازش آن مقداری حافظه و زمان مصرف میشود. اگر مدت زمان و حافظه مصرفی اجرای برنامه و نمایش سایت زیاد باشد ممکن است کاربر از بازدید از سایت صرف نظر کند. این مدت زمان موقعی برجسته تر میشود که بازدید از سایت زیاد باشد و حافظه زمانی برجسته تر میشود که حجم اطلاعات زیاد باشد.حال در این مطلب میخواهیم راهکاری برای اندازهگیری حافظه و زمان کدها را به دست آوریم.
زمان برنامه
زمان اجرای پردازش کدها تاثیر زیادی روی سرعت دارد. هرچه زمان مصرف شده بیشتر باشد سرعت آن کمتر است و بالعکس. هرچه سرعت کمتر باشد سایت برای کاربر دیرتر نمایش داده میشود و سربار زمانی زیادی رویhost دارد.
اندازهگیری زمان برنامه
برای اینکار میتوان ازمتد microtime() استفاده کرد. از تفاضل مقدار زمان ثانویه و اولیه مقدار زمان کلی را حساب کرد به صورت زیر:
<?php
/** @var float $TimeFirst زمان در لحظه ی اولیه است. */
$TimeFirst=microtime();
/////دراینجا متن هایی که می خواهیم بررسی شود قرارداده میشود
/** @var float$TimeFinal زمان پایان کدها است*/
$TimeFinal=microtime();
/** @var float $Time برای پیدارکردن زمان کل باید تفاضل زمان اولیه و ثانویه را به دست آوریم.*/
$Time=$TimeFinal-$TimeFirst;
برای دیدن زمان نهایی ، آن را چاپ میکنبم///
echo $Time;
<?
مقدار حافظه اشغال شده توسط برنامه
مقدار حافظه اشغال شده تاثیر زیادی روی سرعت و حجم حافظه host دارد. هرچه حافظه مصرف اشغال شده بیشتر باشد سرعت کمتر است و بالعکس.
اندازهگیری حافظه اشغال شده در توسط برنامه
برای اینکار میتوان از تابع memory_get_usage() استفاده کرد.از تفاضل مقدار حافظه ثانویه و اولیه مقدار حافظه کلی را میتوان حساب کرد.
<?php
/** @var int $MemoryFirst حافظه اشغال شده اولیه است*/
$MemoryFirst=memory_get_usage();
/////دراینجا متن هایی که می خواهیم بررسی شود قرارداده میشود
/** @var int $MemoryFinal حافظه ی اشغال شده در پایان کد ها است */
$MemoryFinal=memory_get_usage();
/** @var int $Memory برای پیداکردن حافظه نهایی ،تفاضل حافظه ی اشغال شده در اول و در لحظه ثانویه به دست میآید*/
$Memory=$MemoryFinal-$MemoryFirst;
///برای دیدن حافظه ی اشغال شده توسط کدها آن را چاپ میکنیم.
echo $memory;
<?
نکات مهم:
1)مقدار زمان و حافظه را جدا بررسی کنید چون روی هم تاثیر دارد
2)برای اندازه گیری زمان میتوان زمان را10 با حساب کرد و میانگین گرفت چون ممکن است گاهی عوامل ثانویه روی زمان تاثیر گذارد.