PDA

توجه ! این یک نسخه آرشیو شده می باشد و در این حالت شما عکسی را مشاهده نمی کنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : چند راه برای افزایش سرعت کدهای php



TAHA
11-05-2009, 11:29 AM
سلام به همه علاقه مندان ه زبان PHP توی این مقاله سعی کردم چند تا را افزایش سرعت اجرای کدهای php که معمولا خودم استفاده میکنم برای ما هم بنویسم

1- کش کردن آبجکت کد ها
هربار که درخواستی به سرور شما ارسال میشه برای کامپایل شدن و اجرا شدن آن کد شئ زمانی نیاز هست حالا اگر این آبجکت کد ها کش (cash) بشن کد های شما سریعتر اجرا میشه
برای کش کردن آبجکت کدهاراه های زیاد و پیچیده ای وجود داره اما راه های ساده تری هم هست مثل استفاده از پکیجهای کش کردن آبجکت کدها
Ioncube:
PHP Encoder, protection, installer and performance tools from ionCube: Home (http://www.ioncube.com/)
Zend Encoder:
http://www.zend.com/products/zend_safeguard
Turckl MMCache:

Turck MMCache for PHP | freshmeat.net (http://freshmeat.net/projects/turck-mmcache/)ی



2-استفاده از سیستم های قالب (template systems)
استفاده از سیستم های قالب نو دیگری از cashing رو فراهم می کنه یعنی کش کردن محتوا
، سیستم های قالب در وضعیتی که اطلاعات استایک رو یک یا چند صفحه وجود داشته باشه و نیازی به reload نداشته باشه ، به خوبی کار می کنه در ضمن استفاده از قالب ها باعث جدای کد های php ازhtml و گرافیک کار میشه در اینصورت زمان اتمام پروژه کاهش پیدا میکنه و برای توسعه های بعدی هم کار راهتره بیشتر سیستم های قالب برای php رایگان هستند که زیر چند نمونه از اونها رو می بینین

Smarty Templates:
Smarty has moved (http://smarty.php.net/)

Pear Templates:
HTML_Template_IT (http://pear.php.net/package/html_template_it/redirected)

PHP savant:
Savant2 (2.4.3) (http://phpsavant.com/yawiki/)


3-مقدار دهی به بعضی از متغیر ها

variables_order = ‘GPC’
register_argc_argv = ‘Off’
register_globals = ‘Off’ (برای امنیت بیشتر معمولا آف هست)
always_populate_raw_post_data = ‘Off’
magic_quotes_gpc = ‘Off

غیر فعال کردن error logging فعال کردن این موردد در زمانی که شما در حال توسعه کدها هستین خیلی خوبه اما بعد از آن زمانی که کاربر در حال کار هست باعث افزایش زمان اجرای برنامه می شه

4-استفاده از IP برای دسترسی به دیتابیس

در حالتی که می تونین از IP برا دسترسی به دیتابیس استفاده کنین این راه پیشنهاد میشه من خودم شخصا در حالتهای که امکان استفاده از IP هست از این راه استفاده مینم که از استفاده از hostname کمی سریعتره

5- فشرده کردن خروجی

مرورگرهای اینترنت اکثرا از قابلیت Gzip پشتیبانی می کنن . قابلیت Gzip امکان فشرده کردن خروجی شما رو تا 80% بوجود میاره توجه کنین که در این حالت کارکرد سی پی یو (cpu usage) ده درصد افزایش پیدا میکنه اما در این حال باعث میه که از پهنای باند کمتری استفاده کنین و صفحه های شما زود تر لود بشه
برای فعال کردن این حالت در فایل php.ini به طریق زیر عمل کنید

zlib.output_compression = On
zlib.output_compression_level = (level)
(leve عددی بین یک تا 9 هست که شما با تست کردن میتونین بهترین حالت رو پیدا کنین

اگر هم از سرور آپاچی استفاده می کنین ماژول mod_gzip رو فعال کنین


وآخر اینکه این چند راه بخش کوچکی هستن از تعداد بیشمار راه برای افزایش سرعت کدهای شما که در آینده سعی میکنم راه های دیگه ای که به ذهنم میرسه پست بدم