در تمامی زبان های برنامه نویسی مکانیزمی برای Cache (کش) کردن اطلاعات تعبیه شده است و PHP نیز چندین پلاگین برای این منظور دارد. APC یا همان Alternative PHP Cache یکی از این پلاگین ها می باشد. وظیفه اصلی آن ذخیره سازی خروجی مفسر PHP در حافظه اصلی است. بدین وسیله در پردازش ها و درخواست های آتی نیازی به Compile مجدد کد منبع نخواهد بود.

برای راه اندازی این ابزار ابتدا می بایست Plugin آن را به PHP اضافه نمایید. برای این منظور ابتدا مطمئن شوید فایل php_apc.dll در پوشه ext در مسیر نصب PHP وجود دارد. اگر این فایل را در آن پوشه نیافتید، نسخه ی مرتبط با سیستم عامل و نسخه PHP خود را از اینجا بیابید و آن را اضافه نمایید. سپس به فایل php.ini بروید و در آنجا

را بیابید و علامت # را از قبل آن حذف نمایید و آن را ذخیره نمایید. در ادامه می بایست وب سرور خود را Restart نمایید. در این هنگام این پلاگین می بایست در PHP فعال شده باشد. برای اطمینان از فعال بودن APC به صفحه phpinfo() بروید و در آنجا به دنبال APC بگردید.

APC in PHPinfo

APC in PHPinfo

اگر APC را در phpinfo یافتید پس به درستی آن را نصب و راه اندازی نموده اید. حال برای مدیریت APC می توانید از فایل apc.php در اینجا استفاده نمایید. پس از دانلود این فایل را در مسیری قابل دسترس در وب سرور قرار دهید. اگر فایل را در Root وب سرور قرار دهید می توانید به آن از طریق آدرس http://localhost/apc.php دسترسی پیدا نمایید. در این هنگام از شما نام کاربری و رمزعبور خواسته می شود. نام کاربری و رمزعبور را می توانید در خط 41 و 42 در فایل apc.php تغییر دهید:

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

APC in PHP

APC in PHP

در این صفحه می توانید تعداد Cache Miss و Cache Hit را مشاهده نمایید و می توانید اطلاعات Cache را حذف نمایید.

همانطور که در بالا اشاره شد روش کار APC به این صورت است که کد Compile شده را در حافظه اصلی برای درخواست های آتی ذخیره می کند. این کار برای سایت هایی که صفحات اسکریپتی طولانی دارند، بسیار کارا خواهد بود. این پلاگین از PHP نسخه 6 به بعد به صورت پیش فرض قرار خواهد گرفت.

نحوه اجرای یک صفحه در زبان PHP به پنج بخش زیر تقسیم می شود:

  1. فایل PHP خوانده می شود و در حافظه قرار داده می شود.
  2. کد PHP به Token و Lexicons تبدیل می شود.
  3. Tokenهای ایجاد شده در مرحله قبل برای اجرا پردازش می شوند.
  4. اطلاعات Compile شده و به Opcodes تبدیل می شوند.
  5. Opcodeها اجرا می شوند.

وظیفه APC در این میان حذف مراحل یک تا چهار است. در واقع یکبار که این کار انجام شود، دیگر نیازی به تکرار آن به ازای هر فایل PHP نخواهد بود.

How APC Works

How APC Works

منابع:

  1. Wikipedia
  2. marc.info
  3. linuxaria.com
  4. inviqa.com
facebooktwittergoogle_pluslinkedin

2 نظر در رابطه با “APC چیست؟ چگونه سرعت پردازش را افزایش می دهد؟

  1. محمد اميرى

    ممنون از مقاله اى که نوشتى
    اما یه نکته هست و اون اینه که تو نسخه هاى جدید php یه اکستنشن دیگه به اسم opcache اضافه شده و به صورت پیشفرض هم نصبه فقط باید فعال بشه
    والبته فکر کنم که apc هم دیگه توسعه داده نمیشه
    حالا خواستى یه سرچى در موردش بکن :)
    موفق باشى

    پاسخ
  2. حامد نریمانی (نویسنده مطلب)

    ممنون از نظرتون
    همانطور که اشاره کردید آخرین نسخه APC تاریخ 2012-09-03 ارائه شده و بعد از آن رها شده است. بین OpCache و APC تفاوت هایی هست که توی یک مقاله جداگانه توضیح می دهم.

    پاسخ

دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

*

*