Наш ассоциированный член www.Bikinika.com.ua

Чому мій сайт працює повільно і що робити

  1. оптимізація контенту
  2. Зміна використовуваного зовнішнього сервера
  3. Налаштування кешування даних
  4. Оптимізація скриптів сайту
  5. Налаштування кешування cо боку CMS
  6. Звернення до стороннім сервісам
  7. Наявність шкідливого ПЗ
  8. Перехід на VPS

Загальний час завантаження сайту складається з:

  • часу відгуку серверів (час запитів і відповідей DNS і веб-серверів, до яких відноситься сайт);

  • часу генерації сайту на сервері і в браузері (сумарний час завантаження всіх файлів сайту).

Ця інформація знаходиться в Інструментах розробника використовуваного браузера. Відкрийте в браузері потрібну сторінку, а потім консоль розробника (в браузерах Google Chrome, Firefox для цього натисніть клавішу F12). Перейдіть у вкладку Network (Мережа):

У вкладці All (Все) буде відображатися список всіх файлів сайту і загальний час завантаження, показник Load:

Щоб дізнатися час завантаження окремого файлу, клікніть по цікавого в списку і потім перейдіть в розділ Timing (Таймінги):

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

Показники Queueing (Черга), Stalled (Заблоковано), DNS Lookup (Пошук DNS), Initial connection (З'єднання) складають час відгуку сервера і, як правило, сумарно займають менше 0,1 с. У разі виникнення проблем на цьому етапі завантаження сайту їх швидко виправляють, так як вони несуть масовий характер і спричиняють безліч скарг.

Найчастіше складності виникають з параметром Waiting (Очікування).

TTFB (Time to First Byte) - час, за яке на екран виводиться повністю прогруженний інтерактивний елемент сторінки. Іншими словами, він описує те, наскільки швидко сайт (з усіма скриптами і даними) завантажився і готовий до використання. Причин, за якими у файлів сайту може підводити параметр TTFB, кілька. Нижче ми перерахуємо основні проблеми та способи їх вирішення.

ERR_CONNECTION_TIMED_OUT

Через невідповідну роботу елементів сайту, перерахованих нижче, при спробі відкрити сайт в браузері може виникнути помилка «Перевищено час очікування відповіді від сайту» (ERR_CONNECTION_TIMED_OUT). Коригування причин повільної роботи сайту призведе до виправлення цієї помилки.

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

У статичних сайтах елементи (JS-файли, CSS-файли, HTML-файли, мультимедійні дані) вже завантажені на сервер, і вам просто потрібно дочекатися їх прогрузкі в браузері.

Відкриваючи динамічний сайт, ви не завантажуєте вже готові файли: ви запускаєте скрипт, який генерує сторінку по вашому запиту.

Щоб визначити, статичний або динамічний файл потребує оптимізації, зверніть увагу на розширення елемента, який довго вантажиться, в списку всіх файлів сайту (Інструменти розробника - Network - All):

Щоб визначити, статичний або динамічний файл потребує оптимізації, зверніть увагу на розширення елемента, який довго вантажиться, в списку всіх файлів сайту (Інструменти розробника - Network - All):

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

Повільно завантажуються статичні елементи

причини:

  • великий розмір файлів;
  • файли завантажуються зі сторонніх серверів.

Рекомендації до виправлення:

оптимізація контенту

Якщо файл повільно вантажиться, тому що його розмір занадто великий (наприклад, зображення по 20 Мб), оптимізуйте його. Читайте про оптимізацію в розділі: Просування сайту .

Зміна використовуваного зовнішнього сервера

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

Налаштування кешування даних

Щоб статичні дані сайту кешуватися і, відповідно, вимагали меншого часу на завантаження, налаштуйте gzip і expires. Про налаштування стиснення і кешування через expires на віртуальному хостингу читайте в статті: Налаштування стиснення і кешування через .htaccess .

Повільно завантажуються динамічні елементи

Великі портали та інтернет-магазини використовують велику кількість звернень до бази даних і ініціалізують роботу великого числа php-скриптів. Це уповільнює роботу сайту і створює високе навантаження на сервер. Нижче будуть приведені поради для оптимізації динамічних ресурсів. Ми рекомендуємо дотримуватися їх комплексно, а не обмежуватися виконанням одного пункту.

Оптимізація скриптів сайту

Вам потрібно проаналізувати скрипти сайту і запити до бази даних. По можливості оптимізуйте їх. Якщо дані дії викликають у вас труднощі, зверніться до розробників сайту або на тематичні форуми. Також ви можете перевести роботу скриптів вашого сайту на php-версії лінійки 7.x, в яких продуктивність вище версій 5.3-5.6.

Зверніть увагу

Фахівці технічної підтримки REG.RU не консультується з питань оптимізації коду скриптів сайту.

Налаштування кешування cо боку CMS

Крім оптимізації скриптів і запитів до баз даних, налаштуйте кешування виконуваного коду. Це збільшить швидкість роботи сайту та знизити навантаження на хостинг. У більшості CMS доступні кешуючий плагіни. В Joomla і MODX можна активувати вбудований кеш, для WordPress рекомендуємо встановити безкоштовний плагін WP Super Cache .

Звернення до стороннім сервісам

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

Наявність шкідливого ПЗ

Також ваш сайт може працювати повільніше при наявності вірусів. Шкідливі скрипти можуть ініціювати віддалене підключення або запускати ресурсомісткі процеси, що спричинить додаткове навантаження на сервер. Перевірте ваш сайт на наявність вірусів, щоб виключити дану причину:

Перехід на VPS

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

Ми рекомендуємо використовувати VPS на XEN з SSD-накопичувачами, так як сервери даного типу найбільш ізольовані від навантаження сусідів (інших користувачів) і мають високу швидкість роботи дискової подсісітеми.

Новости