Оптимизиране на Magento хостинга и повишаване на производителността

Banko Stoyanov16.09.20153min0
magento-logo.png

Magento logo


Оптимизиране на Magento: Най-доброто се подобрява


Електронната търговия е новата вълна и много технологии се адаптират към този постоянно нарастващ дял от икономиката. Един от тях е Magento софтуерът, мощна платформа с отворен код, която използва бази данни MySQL и Zend PHP. Тя има модулна архитектура, която ѝ дава гъвкавост и мащабируемост, превръщайки я в любима сред потребителите, които желаят по-голям контрол.

Въпреки мощта си, Magento е много интуитивен — каталогите на продукти могат да се създават и управляват лесно. Няколко изображения, отзиви и списъци с желания са възможни заедно с филтри, напреднала поддръжка на клиенти, промоционни инструменти, интеграция с Google Analytics, почти 2,000 разширения и много други. Въпреки всичко това, Magento все още има място за подобрение чрез оптимизация.

Повишаване на производителността на Magento


Преди работа върху конфигурацията на бекенда, винаги помнете да проверите настоящата производителност на вашия Magento сайт. Това може да се направи чрез онлайн инструменти. Този наръчник ще използва следната сървърна инфраструктура:


  • Уебсървър — EC2 (c3.large): 1 бр.

  • Сървър — RDS DB (c1.medium)

  • 1 кофа на Amazon S3

  • CloudFront

  • SMTP — SES


Следните техники могат да ускорят производителността на Magento:

1. Използване на CloudFront CDN за разпределение на изображенията в папката за кеш


Тази стъпка ще изисква да формирате всички свързани услуги CloudFront с новосъздаден бакет S3. Също така трябва да създадете нов CNAME, за да позволите достъп до CDN URL, например mymedia.website.com. Трябва да се настрои cronjob под директорията „media/catalog/product/cache“ и в „/home/youspred/public_html/medi/avatar/“. Само папката за кеш трябва да бъде преместена към CDN, тъй като всички файлове, които ще се показват, идват от тази папка.

Въведете S3 командата, която е зададена за дублиране на кеш папката на всеки 10 минути. Това също трябва да се направи за папката „avatar“, използвайки скрипта:

/usr/bin/s3cmd sync –recursive setalc –acl-public –recursive –add-header=“Expires:`date -u+ „%a, %d %b %Y %H:%M:%S GMT“` –date „+4 years“` –add-header=\’Cache-Control:max-age=31536000, public\’ /home/domain/public_html/media/catalog/product/cache/ s3://yourdomain.com/catalog/product/cache

2. Инсталиране на Varnish кеша, след което го конфигурирайте.


Това ще бъде основна пречка в оптимизацията на сайта. Просто инсталирайте Varnish чрез Терминал.

Забележете следните конфигурационни файлове за Varnish:
/etc/varnish/default.vcl (контрол на кеша)
/etc/sysconfig/varnish (конфигурация на сървъра)

Първо, конфигурирайте Varnish за средата, като прехвърлите Apache да слуша на порт 8000. Уверете се, че сайтът ще се показва коректно през порт 8000 и проверете, че това не позволява публичен достъп.

3. Актуализирайте настройките на Varnish.


Файлът за конфигурация (/etc/sysconfig/varnish) трябва да се актуализира и следните настройки да се променят:

VARNISH_LISTEN_ADDRESS=0.0.0.0
VARNISH_LISTEN_PORT=80

4. Рестартирайте Varnish и Apache/Nginx.


5. Инсталиране на Turpentine Magento.


Turpentine Magento е плъгин, който проектира ACL списъка на Varnish — списъкът, който повиква кои URL адреси трябва да се кешират или не. След като този плъгин бъде инсталиран върху Magento, “Turpentine” ще бъде меню под системното основно меню.

Ще има две опции: Varnish опции и Опции за кеша. Първата предоставя информация за сървъра, административния порт и секретния ключ (намира се в директория /etc/varnish/secret). Втората ще предостави информация за бекенда и настройване на ACL и стойности за таймаут.

Когато променяте Varnish опциите, файлът “default.vcl” ще бъде създаден в папката var. Трябва само да създадете символичен линк от оригиналното място на конфигурацията към този файл, за да може Varnish да използва най-новите настройки на Turpentine.

6. Инсталиране на OnePica ImageCDN.


Този плъгин от Magento Connect ще ви позволи да ускорите зареждането на магазина. Всички кеширани изображения се качват автоматично в Amazon S3 и после се споделят чрез CDN URL. Уверете се, че активирате плъгина Image CD чрез настройки — трябва да посочите името на кофата, както и достъп и секретни ключове. Текущият адаптер трябва да бъде зададен към Amazon S3/CDN.

7. Инсталиране на APC кеш.


Това се инсталира лесно чрез Терминал. Конфигурационният файл е в „/etc/php.d/apc.ini“. PHP файлът apc.php (от източника) може да се редактира и използва за следене на кеширащите статистики през браузър.

8. Оптимизирайте Apache.


Проверете файла httpd.conf и актуализирайте (или добавете) следното:


  • KeepAlive Включено

  • KeepAliveTimeout 2

  • ServerTokens Prod

  • ServerSignature Изключено

  • TraceEnable Изключено

  • Timeout 60

  • Php_admin_value open_basedir none


Задайте най-добрите MPM и Worker свойства за главния конфигурационен файл на Apache. Формулата е:

MaxClients: (TotalMem-CriticalServicesMem)/Size на процес

Можете да адаптирате скрипт, който изчислява размера на всеки Apache процес.

След това проверявайте колко бързо се получават отговорите. Проверявайте и натоварването чрез командата top. Трябва да можете да следите и скоростта на създаване на worker процеси.

За допълнителна поверителност трябва да защитите публично writable папките, за да предотвратите хакване. Magento определя файловете media и var като writable от уеб сървъра. Можете да създадете скрипт, който да прави така, че всички PHP файлове в тези папки да не се изпълняват, тъй като тези папки са чести входни точки за злонамерени кодове на хакери.

След като опитате всичко, проверете пак статуса на сайта, за да видите резултатите от оптимизацията. Сега ще имате по-бърза и по-отзивчива Magento настройка!

Banko Stoyanov

This blogpost is written by Banko Stoyanov. Stoyanov is a Marketing manager at CooliceHost. Stoyanov holds an MBA in Marketing strategy and Business developing. He's passionate about data analysis, consumer behavior, cloud technology, and marketing. He is a lifelong learner who regularly keeps himself updated with the latest technologies and industry advancements. In his free time, he explores coffee scene and stays active through running and fitness. Find him on Linkedin and Facebook.


Оставете отговор

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са маркирани с *


Copyright © 2026 – CooliceHost.com – Всички права запазени.