Въпроси относно използването на APC и Full Page Cache в Magento

В момента преглеждам бялата книга за ефективността на Magento, за да оптимизирам нашето изживяване с Magento преди началото на празничния сезон. В продължение на 2 месеца получаваме тежки пикове в трафика и искаме да сме сигурни, че работим гладко. Ние използваме Magento EE 1.8 и по подразбиране използваме Full Page Cache. В допълнение към FPC активирах GZIP, заглавки за контрол на кеша и направих всички корекции за настройка на mySQL, препоръчани от бялата книга. Ние също така ще използваме CDN за обслужване на статично съдържание.

В момента използваме кеш на файловата система и съм объркан къде APC ще попадне в този стек, ако изобщо ще попадне. Струва ли си да инсталираме APC, когато вече използваме FPC? Знам, че кеша на Magento и кеша на APC са 2 различни неща, така че ако редактирам продукти, които обезсилват кеша на Magento и се нуждаят от опресняване, трябва ли на свой ред да опреснявам кеша на APC всеки път? Всяка помощ се оценява!


person jkphl    schedule 20.07.2012    source източник
comment
това е php кеш, компилира кода и го съхранява в ram, както и има допълнителен променлив кеш   -  person Andrew    schedule 21.07.2012
comment
Да, просто се опитвам да разбера как ще работи в моменти, когато трябва да го освежа. Редактираме много продукти по време на часове за пазаруване и трябва да обновим FPC прилична сума. Така че след като опресня FPC, ще трябва да опресня APC правилно?   -  person jkphl    schedule 21.07.2012


Отговори (2)


APC е кеш на опкод, насочен към самия PHP, FPC е по-скоро насочен към кеширане на съдържание, насочено към самия Magento. Не е необходимо да обновявате APC, когато правите промени в продукта. Само FPC ще трябва да бъде обновен при редактиране от бекенд тип, Magento обикновено ще ви уведоми, че е невалиден. APC ще трябва да бъде обновен само ако PHP или файл с шаблон (.phtml) е модифициран или променен. Имайте предвид, че APC съхранява кеша както за CLI, така и за уеб базирано по различен начин, така че най-добре е използването на някакъв тип wget или cURL заявка към персонализиран вътрешен URL адрес, който ще изчисти кеша.

Например нещо като

system('wget --spider --quiet http://localhost/apc/clear_apc_cache.php');

Също така силно препоръчвам да зададете обратен прокси сървър Varnish пред стека, тъй като неговата производителност е силно забележима при системи с голям трафик. Можете също да използвате memcache, за да поддържате зарежданията на базата данни при плащане или динамични заявки извън Varnish или FPC.

Настройване на Varnish за работа с Magento

Надявам се това да помогне!

person B00MER    schedule 20.07.2012

Можете да използвате APC за вашето кеширане на 2 нива (вижте _getBackendOptions() в Mage_Core_Model_Cache). Въпреки че APC не е най-добрият вариант за това.

В зависимост от това дали изпълнявате един или множество уеб възли, можете да изберете memcache (множество уеб възли) или tempfs (единичен уеб възел). С memcache, конфигуриран в Magento, все още можете да използвате APC за кеширане на кодове за операции.

След като редактирате продукт, трябва само да натиснете „прочистване на кеш паметта“ в администратора за управление на кеша, за да обезсилите всички записи в memcache. APC не се нуждае от промиване.

Къде в момента съхранявате вашите сесии? Ако също е на диск, може също да искате да ги мигрирате към tempfs или memcache. Все пак бъдете внимателни, когато използвате memcache: използвайте различен порт/пул за вашите сесии от този, който се използва за FPC. В противен случай бихте прочистили всички сесии при изчистване на memcache, излизане от всички потребители и изчистване на количките им в ход.

person Tim Hofman    schedule 21.07.2012