همانگونه که می دانید PHP یک زبان مفسری است. به این معنی که در هر بار اجرای یک فایل PHP، آن فایل خوانده و سپس Parse می شود. آنگاه نتیجه Parse شده فایل PHP که به آن OPcode گفته می شود، آماده اجرا خواهد بود. این کار در هر بار اجرا اتفاق خواهد افتاد.
حال برای جلوگیری از تکرار این مراحل ابزارهایی برای Cache کردن OPcode ایجاد شده اند. یکی از این ابزارها OPcache است.

روش کار OPcache و یا Zend Opcache به صورت تصویر زیر می باشد.

PHP OPcache

PHP OPcache

همانطور که در تصویر مشاهده می کنید، در هر اجرا چک می شود که آیا OPcode مورد نظر برای اجرا در حافظه اشتراکی وجود دارد یا خیر. در صورت وجود از آن استفاده خواهد کرد و اگر وجود نداشت، پس از ایجاد OPcode ابتدا آن را در حافظه اشتراکی ذخیره می کند و آنگاه آن را اجرا می کند.

این ابزار به طور کلی دارای 5 تابع است.

تابع اول

این تابع آدرس یک فایل را در ورودی می گیرد و آن را بدون اینکه اجرا کند در کش قرار می دهد. این کار برای زمانی که سرور شما Restart می شود می تواند مفید باشد.

تابع دوم

این تابع اطلاعات مربوط به تنظیمات کش را ارائه می دهد.

تابع سوم

این تابع اطلاعاتی درباره وضعیت فعلی کش به شما ارائه می دهد.

تابع چهارم

این تابع یک اسکریپت را از کش حذف می کند. اگر ورودی دوم به تابع داده نشود و یا مقدار False به آن داده شود، اسکریپت تنها در حالتی از کش حذف می شود که تغییری در فایل اصلی آن پس از کش شدن اتفاق افتاده باشد.

تابع پنجم

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

منابع

  1. Wikipedia
  2. PHP Official Website
  3. Stackoverflow
facebooktwittergoogle_pluslinkedin

2 نظر در رابطه با “OPcache چیست؟

  1. طراحی سایت

    اگر بخوایم یه فایل خاص از کش حذف بشه دسترسی به سرور هم نداریم راهش چیه با توجه به اینکه تو خود فایل هم نمیشه چیزی نوشت

    پاسخ

دیدگاه

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

*

*