3636 3646 044 شماره ثبت 3588 (سهامی خاص)

آموزش نصب memcached در سرور لینوکس

memcached یک سیستم distributed memory object cache هست که اشیا و query های دیتابیس را در رم سرور ذخیره و کش می کند. در حالت کلی memcache نتیجه درخواست هایی را که مدام به پایگاه داده فرستاده می شوند را به صورت کوتاه مدت در RAM سرور نگه داری می کند و با کاهش مراجعات به سرویس دهنده mysql باعث افزایش چشم گیر سرعت در اجرای درخواست ها و در نتیجه افزایش توان تحمل سرور برای آنلاین های همزمان بیشتر می شود. بهترین کارایی memcached در سرورهای توزیع شده مشاهده می شود، هر چند اگر روی یک سرور به تنهایی اجرا شود هم تاثیر بسزایی در افزایش سرعت خواهد داشت. بسیاری از cms های مشهور از جمله wordpress,joomla,vBulletin قابلیت اتصال به memcached را دارند.

شکل زیر به خوبی نحوه کار memcached را نشان می دهد.

memcached-01memcached_flowchart

مم کش در حالت سرورهای توزیع شده:

memcached_02

نصب memcached:

RedHat / CentOS

Debian / Ubuntu

بعد از نصب، باید سرویس را اجرا کرده و آن را به صورت startup تنظیم کنید:

نصب memcached به پایان رسیده ولی برای به کارگیری آن در php نیاز به ماژول php memcache هست که نصب و راه اندازی آن را بررسی خواهیم کرد، اما قبل از آن باید پورت 11121 که memcached از آن استفاده می کند را باز کرد.

باز کردن پورت در فایروال:

برای تغییر کانفیگ memcache از جمله تغییر پورت، تعداد کانکشن، حجم حافظه و … می توانید فایل تنظیمات آن را ویرایش کنید.

نصب php memcache extension :

تا اینجا این extension را دانلود و استخراج کردیم، حالا باید دستور phpize را اجرا کنیم. دقت کنید که شاید در برخی سرورها با اجرای phpize با command not found مواجه شوید، در این صورت از دستور locate برای پیدا کردن phpize در دایرکتوری محل نصب php استفاده کنید.

پس از اجرای phpize دستورات نصب را وارد کنید:

پس از اتمام نصب افزونه، محل نصب آن نمایش داده خواهد شد. با load کردن افزونه از مسیر مورد نظر، memcached قابل استفاده در php خواهد بود. به این منظور فایل php.ini جاری سرور را ویرایش کنید :

و محل نصب + نام ماژول را به صورت زیر در آن وارد کنید:

برای اعمال شدن تغییرات وب سرور را restart کنید:

حالا با چک کردن phpinfo باید memcache را در آن مشاهده کنید.

memcached-03