Швидкість завантаження сайту дуже повільна


25

Швидкість завантаження сторінки мого клієнта на Magento дуже повільна. Що я можу зробити, щоб зменшити час завантаження сторінки?

URL-адреса сайту - desibazaar.pk.

Відповіді:


36

Спочатку визначте, чи це візуалізація на передньому кінці чи справжнє виконання сценарію повільне. Зверніться до консолі розробника у вашому браузері, чи немає часу до першого байту . Це тривалість обробки сценарію на сервері

введіть тут опис зображення

На скріншоті ви бачите, що він досить низький (200 мс), тому в цьому випадку проблема буде не на сервері, а на передній частині. Тепер, якщо закінчиться, скажімо, секунду, яку ви, можливо, захочете оптимізувати.

Перш ніж натискати на деякі підсилювачі та додаткове кешування, що не є виправленням, це лише патч або смуга, щоб приховати справжню проблему, спробуйте з’ясувати, що саме відбувається повільно. Для цього також можна використовувати кілька інструментів.

Повільні запити

Magento може бути дуже важким для бази даних, тому включення журналу повільних запитів може бути хорошим місцем для початку. Перегляньте цю публікацію, як її ввімкнути. Журнал покаже вам будь-який запит, який займає більше, ніж X секунд.

Профілі

Профілі допомагають вам зрозуміти, що відбувається у вашому коді. Для Magento я рекомендував би почати з Aoe_Profiler . Просто встановіть його та увімкніть. На передньому кінці ви отримаєте такий вихід:

введіть тут опис зображення

Розгорніть результати та перевірте наявність великих червоних блоків. Це фактичний час, який потрібно було обробити певній частині коду. Слідкуйте за будь-якими сторонніми модулями, які займають багато часу або пам'яті.

Ще один чудовий інструмент - Чорний вогонь . Оскільки Aoe_Profiler є модулем в Magento, він не показує основні процеси php і може вийти з ладу на великих установках з великою кількістю модулів. Чорний вогонь працює на сервері. За допомогою хакатону ми встановили коробку Vagrant з чорним вогнем, яку ви можете використовувати. Просто поставте туди свій проект і розпаліть його. Перегляньте сайт Black fire для отримання додаткової інформації, як ним користуватися.

Остання, мабуть, моя улюблена: New Relic .

На жаль, це платна послуга, хоча вони надають безкоштовну пробну версію для профільних акаунтів. Після встановлення його на сервер та підключення профілю зачекайте кілька годин, щоб дані надійшли. Переконайтеся, що на магазині є деякий трафік.

введіть тут опис зображення

У New Relic також є повідомлення в блозі про те, як налагодити Magento, який я можу порекомендувати. Також перегляньте модуль ProxiBlue New Relic для отримання додаткових даних Magento в New Relic.

В основному це покаже всі описані вище функції, такі як повільні запити, процеси в PHP тощо та відобразить їх у простих графіках та таблицях. Це повинно дати вам прекрасне розуміння, у чому полягає проблема у вашій установці.

І звідси Тепер, коли ви знаєте, що викликає низьку продуктивність, ви можете перейти до її вирішення. Перевірте такі форуми, як Google або Google, на частину або модуль Magento, який повільний. Дуже багато питань відомі, інші вирішували це раніше. Або якщо ви не можете знайти рішення, опублікуйте своє запитання тут і включіть у нього свої висновки


Відмінно .. Дякую за розуміння про "BlackFire"
K Tomy

11

Оптимізація швидкості сайту в Magento - дуже велика тема. Це одне посилання, яке може вам допомогти,

http://www.gxjansen.com/blog/101-ways-to-speed-up-your-magento-e-commerce-website/

Зробивши це суть,

Вам потрібно сконцентруватися на двох аспектах: 1. Оптимізація за кордоном 2. Оптимізація бекенда

Оптимізація фронтену

  1. Ви можете встановити Fooman Speedster - http://www.magentocommerce.com/magento-connect/speedster-by-fooman.html та включити css, js spajanje

  2. Увімкнути кешування блоків Magento в адміністраторі.

  3. Увімкнути стиснення Gzip

Оптимізація бекенду

  1. Ви можете налаштувати Varnish для кешування повної сторінки

  2. Увімкнути ускладнення в бекенді.

  3. Увімкнути плоску структуру для каталогу (категорії та продуктів)


1

Ось кілька невеликих хитрощів, які я знайшов, щоб допомогти прискорити ваш сайт, який ви можете спробувати:

Відкладіть завантаження зображення, додавши це до /template/page/html/head.phtml

<script>
function init() {
var imgDefer = document.getElementsByTagName('img');
for (var i=0; i<imgDefer.length; i++) {
if(imgDefer[i].getAttribute('data-src')) {
imgDefer[i].setAttribute('src',imgDefer[i].getAttribute('data-src'));
} } }
window.onload = init;
</script>

Потім /template/catalog/product/list.phtmlзмініть свої зображення на такі посилання:

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AQQATUqB0EhKgAAAAxJREFUCNdj+P//PwAF/gL+3MxZ5wAAAABJRU5ErkJggg==" data-src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135); ?>" width="135" height="135" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>

Ще один - "Pre Gzip" усі ваші javascripts та CSS-файли, а потім додайте це до свого .htaccess.

    <ifModule mod_headers.c>
    ##### serve pre gziped files #####
    # Rules to correctly serve gzip compressed CSS and JS files.
    # Requires both mod_rewrite and mod_headers to be enabled.
    # Serve gzip compressed CSS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.css $1\.css\.gz [L,QSA]

    # Serve gzip compressed JS files if they exist and the client accepts gzip.
    RewriteCond %{HTTP:Accept-encoding} gzip
    RewriteCond %{REQUEST_FILENAME}\.gz -s
    RewriteRule ^(.*)\.js $1\.js\.gz [L,QSA]

    # Serve correct content types, and prevent mod_deflate double gzip.
    RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1]
    RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1]
</IfModule>

1

Magento - це чудова система електронної комерції. Він має багато функцій, і ви дійсно можете створити масштабовану платформу електронної комерції. Я використовував Magento в своєму останньому проекті і стикався з цим питанням швидкості. Провівши деякі дослідження та модифікації, я дійсно заскочив свій веб-сайт.

Оптимізація сервера

  • Використовуйте Nginx як веб-сервер
  • Перемістіть MySQL на інший сервер із репліками master-slave. Якщо ви перебуваєте на AWS, використовуйте RDS для MySQL.
  • Оптимізуйте Nginx та Php-fpm
  • включити стиснення gzip
  • Увімкнути кеш браузера

Налаштування Magento

  • Вимкнути всі непотрібні розширення
  • Об'єднайте файли CSS та JavaScript
  • Вимкнути журнал
  • Очищення таблиць журналів Magento
  • Увімкнути зовнішній кеш на всій сторінці

Встановити кеш Redis, APC Opcode та розширення кешу на повній сторінці - Встановити прискорювачі PHP - Встановити кеш Redis для кешування бекенда та сеансу - Встановити Lesti FPC

Оптимізація зображень & YSlow - в середньому 56 відсотків ваги сторінки веб-сайту складають зображення. Оптимізація зображень виробів може значно збільшити швидкість ваших сторінок, оскільки це зменшує час їх завантаження. - Скануйте свій веб-сайт через gtmetrix або Pingdom та дотримуйтесь їх пропозицій щодо оптимізації.

Використовуйте CDN

Ви можете прочитати деталі про це на моєму веб-сайті: http://www.ranjeetvimal.com/tips-to-speed-up-magento-1-9-performance/


0

якщо ви перебуваєте в спільному хостинг-середовищі, дуже складно досягти хорошої швидкості, оскільки не маєте повного контролю над сервером, а ресурс використовується декількома іншими веб-сайтами, але якщо ви на спеціальному сервері та маєте повний доступ адміністратора, спробуйте кеш лаку .

інші речі, які ви можете зробити -

1. Комбінувати файли JS та CSS

Magento admin -> System Configuration -> Developer -> Under Javascript Settings”, change Merge Javascript Files to YES.
Magento admin -> System Configuration -> Developer -> Under CSS Settings”, change Merge CSS Files to YES

2. Увімкнення стиснення виводу, закінчення заголовків та відключення ETags у файлі .htaccess дивіться на цьому /programming//a/14745165/3114253

  1. Використовуйте CDN, якщо можливо

  2. Використовуйте функцію компіляції Magento. Повідомляється, що ви підвищуєте продуктивність на 25% -50%: Система> Налаштування. > Інструменти> Компіляція.

  3. Показати менше ні. продукту на сторінці переліку продуктів

  4. Увімкнути плоский каталог.

У інтерфейсі адміністратора Magento перейдіть до системи> Конфігурація> Каталог. У розділі Frontend змініть Використовувати категорію "Плоский каталог" на "YES". За бажанням під Frontend змініть Використовувати плоский каталог продукту на YES. Очистити кеш.


0

Якщо ви спробуєте прискорити свій інтерфейс:

  • використовувати CDN для зображень (!) та зменшити розмір зображення
  • об'єднати CSS та JS
  • завантажте JS перед тегом закриття тіла
  • використовувати асинхронне завантаження js, коли це можливо
  • використовуйте спрайти зображень або шрифт піктограми замість тисяч файлів PNG
  • зменшити невикористаний CSS
  • генерувати критичний шлях для вашого css

Бекенд:

  • використовувати додатковий кеш, як лак (TTFB <15ms) або LestiFpc
  • профіліруйте завантаження сторінок і складні запити MySQL та виправте їх
  • активувати gzip, etags, кеш браузера тощо через .htaccess
  • використовувати MySQL на одному сервері

Будь ласка, не зв’язуйте платні послуги із URL-адресою запрошення для власних вигод.
7оч.

0

Щоб збільшити швидкість веб-сайту magento, можливо, спершу потрібно сканувати його за допомогою www.gtmetrix.com або Google Page Speed ​​Insights:

Оцінка швидкості сторінки Google

то ви можете вирішити, що можна зробити. У більшості випадків це зводиться до:

  • оптимізувати час до першого байту (TTFB), щоб зменшити час відгуку сервера
  • відстрочка розбору Javascript
  • оптимізувати зображення
  • використовувати спрати CSS
  • встановлення розмірів зображення
  • мінімізуйте CSS / JS / HTML
  • об'єднати JS / CSS до меншої кількості запитів HTTP

Взяті з 34 способів прискорити М1 і М2

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.