PDA

View Full Version : سوال: بدست آوردن میزان حافظه مصرف شده در هر اسکریپت؟



idocsidocs
جمعه 25 شهریور 1390, 16:25 عصر
من می خوام توی اسکریپتهام میزان حافظه و پردازش مصرفی هر اسکریپت رو به دست بیارم، لطفا راهنمایی کنید.

amirkhezri
شنبه 26 شهریور 1390, 12:22 عصر
سلام
ببین این تابع بدردت میخوره

echo memory_get_usage();
البته تا جایی که تست کردم میزان حافظه مصرفی کل رو تا اون خط نشون میده
میتونی میزان حافظه مصرفی رو قبل و بعد از اسکریپتت بذاری و از هم کم کنی
البته تابعش اینه فقط

memory_get_usage()
موفق باشی

binyaft
شنبه 26 شهریور 1390, 12:39 عصر
من می خوام توی اسکریپتهام میزان حافظه و پردازش مصرفی هر اسکریپت رو به دست بیارم، لطفا راهنمایی کنید.

جستجو بلدی ؟
یا گوگل اخترع شده خبر داری ؟

idocsidocs
شنبه 26 شهریور 1390, 12:47 عصر
میتونی میزان حافظه مصرفی رو قبل و بعد از اسکریپتت بذاری و از هم کم کنیبغیر از این تابع، تابع دیگه ای نیست که بشه از میزان بکارگیری منابع سخت افزاری توسط پی اچ پی مطلع شد؟

من الان از همین تابع استفاده می کنم.


یا گوگل اخترع شده خبر داری ؟ نه خبر نداشتم، گوگل دیگه چیه؟

idocsidocs
شنبه 26 شهریور 1390, 14:48 عصر
من وقتی با تابع memory_get_peak_usage تست می کنم، برای هر نوع صفحه حداقل 800 کیلو بایت مصرف می شه. این مقدار حافظه مصرفی زیاد نیست؟

idocsidocs
یک شنبه 27 شهریور 1390, 12:00 عصر
سایر دوستان نظری ندارن؟

A B C D
یک شنبه 27 شهریور 1390, 16:24 عصر
من وقتی با تابع memory_get_peak_usage تست می کنم، برای هر نوع صفحه حداقل 800 کیلو بایت مصرف می شه. این مقدار حافظه مصرفی زیاد نیست؟
بالاخره PHP یه زبان سطح بالاست. الکی نیست که!! لایه های انتزاع و هوشمندیهایی که هست و ساختمان داده ها و امکانات سطح بالاش باعث میشه طبیعتا مصرف حافظه هم بیشتر باشه.

اینه که بنده بارها به اونایی که روی بهینه سازیهای جزیی اصرار دارن میگم چرا نمیرن از C بجای PHP استفاده کنن.
یه زبان سطح بالا هزینه داره. و بهینه سازیهای جزیی درمقابل این هزینه ها یه چیز خیلی کوچکی هستن که در بیشتر موارد اثر مشهودی هم نخواهند داشت.

بهرحال این مقادیر مصرف منابع امروزه روز دیگه در بیشتر کاربردهای استاندارد اهمیت خاصی ندارن.
اپلیکیشن نویسی با زبان سطح بالا غیر از این نیست.
فرضا شما میای به خیال خودت چند ده بایت یا حتی چند صد بایت بهینه سازی میکنی اما خود ساختارهای سطح بالای زبان چند برابر این مقادیر رو مثل آب خوردن بصورت رزرو کنار میذارن که آیا تا آخر برنامه بکار بیاد یا نیاد. یعنی طراحان زبان و مفسر اینطور طراحی کردن.
همینطور درمورد مصرف CPU.
البته بنظرم محدودیت CPU بیشتر از حافظه پیش میاد.

idocsidocs
یک شنبه 27 شهریور 1390, 17:49 عصر
فرضا شما میای به خیال خودت چند ده بایت یا حتی چند صد بایت بهینه سازی میکنی اما خود ساختارهای سطح بالای زبان چند برابر این مقادیر رو مثل آب خوردن بصورت رزرو کنار میذارن که آیا تا آخر برنامه بکار بیاد یا نیاد. یعنی طراحان زبان و مفسر اینطور طراحی کردن.
همینطور درمورد مصرف CPU.
البته بنظرم محدودیت CPU بیشتر از حافظه پیش میاد. من الان وقتی میزان حافظه مصرفی توسط پی اچ پی رو اندازه گیری می کنم، 700 کیلو بایت مصرف می شه. این مقدار حافظه برای گرفتن عنوان و بخشی از متن 10 تا مقاله مصرف می شه.

ایا این میزان حافظه زیاد نیست؟

اگر 20 تا بازدیدکننده با هم بگیرم، میزان حافظه مصرفی می ره روی 14 مگ !

A B C D
یک شنبه 27 شهریور 1390, 17:58 عصر
این مقدار حافظه برای گرفتن عنوان و بخشی از متن 10 تا مقاله مصرف می شه.مطمئنی همش برای اوناست؟ شاید مال چیزهای دیگری هم هست و یا چیزهایی که PHP خودش بصورت خودکار به هر اسکریپت اختصاص میده.

ایا این میزان حافظه زیاد نیست؟ ساختار زبانهای سطح بالا پیچیده است. آدم از کجا میتونه بفهمه غیرعادیه؟ مگر اینکه دیگران هم مورد کاملا یکسانی رو تست کنن و با هم مقایسه کنید.
بهرحال بنظر من نباید نسبت به اینطور مسائل حساس بود. اینطور چیزها تا وقتی مشکلی پیش نیامده ارتباط و اولویتی برای برنامه نویس ندارن. واسه چی رفتی دنبالش؟ واسه چی توی چیزی که بهت مربوط نیست فضولی میکنی بچه؟ :لبخند:


اگر 20 تا بازدیدکننده با هم بگیرم، میزان حافظه مصرفی می ره روی 14 مگ ! نمیدونم والا اینم حرفیه!! ولی مطمئنی؟ باید در شرایط واقعی تست بشه آخه.
مثلا شاید PHP بعضی از اون منابع رو بصورت مشترک بین اسکریپت ها استفاده کنه. اینطور بهینه سازیهای در سطح مفسر چیز غیرعادی ای نیست.

A B C D
یک شنبه 27 شهریور 1390, 18:27 عصر
بالاخره سرور هم الکی نیست که. واسه چی بالای چند گیگ رم داره؟
20 نفر دقیقا همزمان ترافیک کمی نیستا!
حساب کن مثلا در هر ثانیه اگر 20 نفر باشن در یک روز چقدر میشه.

idocsidocs
یک شنبه 27 شهریور 1390, 18:53 عصر
نمیدونم والا اینم حرفیه!! ولی مطمئنی؟ باید در شرایط واقعی تست بشه آخه.
مثلا شاید PHP بعضی از اون منابع رو بصورت مشترک بین اسکریپت ها استفاده کنه. اینطور بهینه سازیهای در سطح مفسر چیز غیرعادی ای نیست. از تابع memory_get_peak_usage(true) استفاده کردم.