دیدگاه جدیدی بگذارید

آیا سرعت سایت دروپالی شما پایین است؟ مشکل را با XHProf شناسایی کنید

افزایش سرعت دروپال

شاید برای شما هم پیش آمده باشد که بعد از مدتی توسعه احساس کنید که دروپال شما به اندازه کافی سریع نیست. در این شرایط معمولا این سوال رو از خودمون میپرسیم که حالا چطور متوجه دلیل کندی دروپال بشم. خوشبختانه برای این سوال پاسخ مناسبی وجود داره که میتونه شما رو در پیدا کردن دلیل کندی دروپال بسیار کمک کنه. شما XHProf رو نصب میکنید و تابع هایی که سرعت دروپال رو کند میکنند رو پیدا میکنید. از اینجا به بعد فقط باید اون توابع را بررسی کنید تا به حل مشکل نزدیک شوید. برای استفاده از این ماژول و نحوه پیداکردن خطا با ادامه مقاله همراه باشید.

XHProf یک ابزار پروفایلینگ است که توسط Facebook توسعه داده میشود. این ابزار بسیار ساده و قابل فهم است و استفاده و نصب اون ساده و سریع است. و ابزار مناسبی برای وب سایت ها و یا اپلیکیشن های پیچیده است.

ابزار پروفایلینگ:
ابزار پروفایلینگ به معنی ابزارهای اندازه گیری برای مسائل مربوط به کارایی در سطح اپلیکیشن و یا کدهای شماست. ابزار پروفایلینگ اطلاعاتی مانند استفاده از CPU و مموری سیستم (حافظه اصلی) و زمان و تعداد فراخوانی های هر تابع و موارد دیگه رو جمع آوری میکند. به طور خلاصه یک ابزار پروفایلینگ بر روی کارایی تاثیر دارد.

نصب XHProf:
برای نصب این ابزار شما باید هم ماژول مربوطه را نصب کنید و هم بسته XHProf رو بر روی سرور خودتون نصب کنید. برای نصب یک راهنما در سایت دروپال ایجاد شده که پیشنهاد میکنم مراحل نصب رو از این طریق پیگیری کنید. البته اگر شما از سیستم عامل لینوکس استفاده میکنید میتوانید از دستورهای زیر استفاده کنید:

استفاده از PECL:

pear channel-update pear.php.net pecl install xhprof

یا

pecl install channel://pecl.php.net/xhprof-0.9.4

apt-get install php5-dev

و اضافه کردن کانفیگ های زیر به فایل /etc/php5/conf.d/xhprof.ini

[xhprof] extension=xhprof.so xhprof.output_dir=/tmp

بعد از نصب بسته XHProf بر روی سیستم عامل کافیست ماژول XHProf رو از سایت دروپال دانلود کنید و بر روی دروپال خودتون نصب کنید.

تنظیمات ماژول XHProf:

بعد از نصب ماژول شما باید ماژول را برای استفاده تنظیم کنید. برای اینکار به صفحه “admin/config/development/xhprof,” برید و گزینه “Enable profiling of page views and drush requests,”  را تیک دار کنید و بر روی ذخیره کلیک کنید.

با انجام مراحل بالا XHProf بر روی وب سایت شما فعال میشود حالا برای مشاهده گزارش های این ماژول به پایین صفحه توجه کنید. در آنجا لینک اطلاعات XHProf رو مشاهده میکنید که حاوی اطلاعات مفیدی برای شماست.

آنالیز گزارش‌های XHProf

گزارشی که توسط XHProf تولید میشود حاوی اطلاعات مفیدی درباره آخرین درخواست هاست. این گزارش شامل زمانی که سرور برای ایجاد صفحه اختصاص داده (Total Incl. Wall Time) و جداکثر میزان مموری استفاده شده برای درخواست (Total Incl. PeakMemUse) میشود.

 

مهم ترین جذابیت این ماژول قسمتی است که توابع در یک جدول نمایش داده میشوند، که شما میتوانید آنها را بر اساس معیارهای متفاوت چیدمان کنید. معیارهایی مثل:

Incl. Wall Time: مدت زمان پردازش تابع
Excl. Wall Time: مدت زمان پردازش تابع به جز زمانی که برای فراخوانی دیگر توابع موجود در ناحیه این تابع استفاده شده است.
Excl. MemUse: میزان مموری استفاده شده برای اجرای این تابع به جز میزان مموری استفاده شده برای اجرای دیگر توابع موجود در تابع
 

مقایسه دو گزارش:
زمانی که شما در حال تغییر برای بهبود سرعت دروپال هستید حتما میخواهید که میزان تغییرات رخ داده را ملاحظه کنید برای این منظور شما میتوانید بین دو گزارش مقایسه انجام بدید. این کار به سادگی با رفتن به مسیر زیر قابل انجام خواهد بود:
admin/reports/xhprof/diff/report_id_1/report_id_2

شما فقط باید شناسه هر گزارش را در بخش خودش قرار بدید تا گزارشی شبیه گزارش زیر را مشاهده کنید:

مزیت‌‌های استفاده از XHProf:
با استفاده از این ابزار شما برای پیدا کردن مشکل در سیستم زمان بسیار کمی وقت نیاز دارید. همچنین شما میتوانید با استفاده از این ابزار قابلیت رشد سیستم را نیز بررسی کنید. با بزرگ شدن سیستم شما میتوانید تغییرات کارایی سایت را رصد کنید.استفاده، نصب و پیکربندی این ابزار در دروپال بسیار ساده است.

شاید شما ابزارهای دیگری برای این منظور بشناسید. اگر تجربه ای در استفاده از آنها یا XHProf دارید با ما در میان بگذارید.

تگ های مطلب: 

CCBot/2.0 (http://commoncrawl.org/faq/)

آخرین ارسال ها

محتواهای محبوب

درباره ما

Author
اینجا دروپال یعنی همه چیز. در مورد دروپال صحبت میکنیم. ماژول هامون رو به اشتراک میزاریم در مورد قالب دروپال ، فروشگاه دروپال، دروپال فارسی و تاریخ شمسی دروپال صحبت میکنیم و هرچیزی که در مورد طراحی سایت با دروپال میدونیم به هم انتقال میدیم. دروپالیون یک سایت شخصی نیست. ما دست همه کسانی که برای پیشرفت دروپال تلاش میکنند رو میفشاریم و با آغوش باز اونها رو در این سایت میپذیریم.

تماس با ما

با ما تماس بگیرید.

logo-samandehi