OPcache is een alternatief voor APC. Sinds Byte aan de slag is met het overzetten van al hun servers naar PHP 5.4 en daarbij het uitfaseren van PHP 5.3, is gebleken dat APC caching niet meer wordt ondersteund. Bij Byte hebben we daarom de opvolger van APC gereedgemaakt voor onze klanten. De opvolger heet OPcache. Dit is net zoals APC alleen beschikbaar voor klanten met een Dedicated Magento Cluster. In dit artikel leggen we je uit hoe je het kan gebruiken op onze hostingomgeving.

Hoe werkt OPcache?

PHP code wordt d.m.v compilatie omgezet naar machinecode, de instructietaal (operation code) van processoren. Een PHP programma kan alleen uitgevoerd worden zodra deze geconverteerd is naar machine code. PHP moet in productie nog door ontwikkelaars/developers gelezen en aangepast kunnen worden, daarom wordt PHP code pas gecompileerd op het moment dat deze wordt opgevraagd. OPcode caching zorgt ervoor dat compiling eenmalig gebeurt ipv bij ieder request. De berekeningen in de PHP code blijven het zelfde; het is alleen de vertaalslag naar machinecode die gecached wordt.

Zet het aan in het Service Panel

Om OPcache te kunnen gebruiken moet je in het Service Panel deze optie eerst aanzetten. Volg hiervoor de volgende stappen:

  1. Log in op het Service Panel.
  2. Selecteer je domeinnaam
  3. Klik op het tabblad Instellingen.
  4. Klik op de optie PHP.
  5. Bij Extensions (onder het kopje Kies uw PHP versie) selecteer je Zend Opcache Optimizer 7.0.3.
  6. Klik op Instellingen opslaan om de wijziging op te slaan.
  7. Gefeliciteerd! Je kunt nu aan de slag gaan met Opcache.

Flushen

Wil je Opcache flushen dan kun je de volgende drie methodes gebruiken:

Gebruik de flush knop in het Service Panel

In het Service panel is het mogelijk om de cache te flushen. Volg hiervoor de onderstaande stappen:

  1. Log in op het Service Panel
  2. Selecteer je domeinnaam
  3. Klik op het tabblad Magento.
  4. Klik op Leeg Caches onder het kopje Caching optimalisaties.
  5. Klik op de Flush Cache knop onder het kopje Zend Optimizer (OPcache).
  6. Je cache is nu geflusht.

Maak een eigen script

Je kunt een eigen PHP script maken waar de volgende code in staat:

opcache_reset();

Wanneer het script wordt aangeroepen zal je OPcache geflusht worden.

Voeg een stukje toe aan je URL

Je kunt de cache ook flushen door het volgende stukje aan de domeinnaam URL in je browser balk toe te voegen:

/byte-bin/magento/flush.php

Je krijgt dan zoiets als http://domein.nl/byte-bin/magento/flush.php. Hier kun je dan OPcache selecteren en daarmee zal Opcache geflusht worden. Je kunt ook http://domein.nl/byte-bin/magento/flush.php?opcache gebruiken. Daarmee kan je direct Opcache mee flushen.

30