رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
افزایش سرعت php و بازدهی php
#1
سلام و خسته نباشید به دوستان عزیز
باور کنین قبل از اینکه سوالم رو اینجا بپرسم اینترنت رو گشتم.
به پست های زیادی هم خوردم:
http://daskhat.ir/12/increase-load-speed-gzip-php
ولی باور نمیکنم که این متن درست باشه.(البته جسارت نشه)
http://sitedar.com/blog/31-speed-up-webs...ccess.html
تو این صفحه هم مطالب مفیدی بود.
http://fotolia.ir/%D8%A7%D9%81%D8%B2%D8%...87-%D8%A7/
در اینجا هم ی تابع دیگری رو معرفی کرده.
http://amib.ir/weblog/?p=147
و...
من برنامه نویس php هستم و تا به حال از این نکته ها غافل بودم و هیچ کدوم رو تو وبسایت هام استفاده نمیکردم.
حالا خواستم ببینم که آیا این توابع واقعا سرعت لوود رو خیلی بالا می برن.
الآن چند روزی هستش که افتادم دنبال این مطالب:
تو ی متنی میخوندم که برنامه نویس php باید حتما از پشت پرده ی php خبر داشته باشه تا بتونه کد های سریع تر و بهینه تری داشته باشه:(در این مورد سرچ کردم و دیدم که خیلی سخته)
تو ی جایی نوشته بود که apache رو خودت باید کانفیگ کنی تا سرعت لووود بالا بیاد.
در مورد بینه سازی دیتابیس هم خیلی گفته بودن.
و....
حالا خواستم ببینم نظر شما در این مورد چیه؟
چ توابعی سرعت لود رو بالا می برن؟
کدوم حلقه ها سرعت بالا تری دارند؟
آیا مطالب یا مقاله ای در این مورد دارید؟
کتابی در این مورد سراغ دارید؟
میشه ی کوچولو منو راهنمایی کنید.
مرسی
پاسخ
تشکر شده توسط:
#2
ی سوال دیگه اینه که:
آیا برنامه نویس php حتما باید از پشت پرده و چگونگی کامپایل شدن کد های php خبر داشته باشه؟
مرسی
پاسخ
تشکر شده توسط:
#3
البته اگه تبلیغات نباشه:
من این کتاب رو هم پیدا کردم.
http://www.pendarepars.com/book/pdf/97
کسی تا به حال این کتاب رو خونده؟
مطالبش به دردمون میخوره؟
مرسی
پاسخ
تشکر شده توسط:
#4
راستش خود کتاب اصلی که این کتاب از روی اون ترجمه شده کتاب خوبیه ولی این نسخه ترجمه شده آقای کرامتی فر (مدیر جدید بخش PHP انجمن برنامه نویس بعد از بنده) رو مطمئن نیستم چون یه جایی میگفتن foreach حدود 37 بار سریعتر از for هست و علتش رو هم بنچمارک گرفتن از این دو حلقه نوشته بودن:

$x = array(...);

for($i = 0; $i < count($x); $i++) { echo $x[$i]; }

foreach($x as $i) { echo $i; }

که هر کسی میدونه علت کندی حلقه for بخاطر اینه که توی هر دو حلقه داره دوباره تعداد عناصر آرایه شمارش میشه و اگه اینطوری بنویسیم:

$c = count($x);
for($i = 0; $i < $c; $i++) { echo $x[$i]; }

اونوقت اختلاف خاصی توی سرعت نیست و حتی توی بعضی موارد حلقه for سریعتر هم جواب میده. البته باز هم همه چیز بستگی به شرایط داره و اینکه برای مثال، آرایه یک بعدی باشه یا چند بعدی و... ولی در کل، تفاوت دیگه بطور قطع در حد 37 برابر نمیشه.

البته باز هم میگم من خودم کتابشون رو نخوندم ولی اگه مؤلفش ایشونه، یکم به نسخه ترجمه شده شک دارم.
پاسخ
تشکر شده توسط: olampiad
#5
درمورد سؤالات پست اول و دوم هم باید بگم که هرچقدر اطلاعاتتون توی این زمینه ها بیشتر باشه بهتره ولی میتونید دستی هم با کمک توابعی مثل microtime و get_memory_usage و... میزان مصرف پردازنده و حافظه رو در مکانهای مختلفی از اسکریپتتون بررسی کنید و روشهای مختلف رو تست کنید تا ببینید کدوم بهینه تره. سایتهای زیادی هم قبلاً از این دست مقایسه ها انجام دادن. مثال:
http://www.phpbench.com

موفق باشید.
پاسخ
تشکر شده توسط: olampiad , php , habibvafapour




کاربران در حال بازدید این موضوع: 1 مهمان