Чому ж навантаження на сервері може створюватися скриптами сайту?
Дуже часто користувачі звертаються в нашу технічну підтримку зі скаргою на роботу сайту, а також на швидкість завантаження скриптів сайту.
У свою чергу дані користувачі намагаються переконати технічну підтримку, що ніяких змін з боку конфігурації скриптів сайту не було і все працювало стабільно до певного моменту часу.
Для того щоб визначити, що є причиною збою сервера, співробітники технічної підтримки в першу чергу перевіряють загальне навантаження на сервері і якщо загальне навантаження (показник load average) на сервері не перевищує допустиму норму (як показано на малюнку знизу)
і при цьому швидкість роботи інших сайтів набагато Вище нашого проблемного сайту, в такому випадку можна припустити, що проблема з боку клієнтського сайту, в першу чергу це стосується скриптів сайту.
Основні причини появи навантаження на сайті:
1. Помилка в системі кешування сайту, що спричинила за собою створення більшої кількості сторінок і в результаті при кожному зверненні пошукової системи створюється навантаження на сайт і сервер.
2. Сталося порушення в структурі бази даних, яку використовує ваш сайт.
Раптові відключення електроживлення комп'ютера, дії комп'ютерних вірусів і шкідливих програм іншого типу, помилки користувача, помилки в програмному забезпеченні, а також дії зловмисників можуть привести до пошкодження внутрішньої структури файлів бази даних сайту
3. Інші причини: зросла відвідуваність вашого ресурсу.
Якщо Ви не справляли ніяких змін на Вашому сайті і раптом отримали лист від нашої технічної підтримки про створення навантаження на сервері, Вам потрібно дотримуватися всіх інструкцій щодо запобігання навантаження і оптимізації роботи сайту.
У надісланих листах ми завжди намагаємося детально повідомити Вам, що саме створює навантаження на сервер і надати список всіх скриптів і процесів, з якими пов'язане навантаження.
Вживати заходів Вам слід вже відповідно до зазначених в отриманому листі даних.
Найчастіше навантаження з боку скриптів створюється в разі використання застарілих версій CMS систем, а також їх компонентів та плагінів. Найпопулярнішими CMS системами, що створюють навантаження на сервері є Joomla та WordPress.
Після аналізу 100 сайтів, що працюють на CMS Joomla були зроблені висновки, що 79% з них не використовують останні версії своєї CMS системи, для користувачів Wordpress ця цифра склала 71%.
Крім того, іноді навіть регулярні зміни скриптів можуть стати причиною створення навантаження на сервері. При внесенні навіть незначних змін в конфігурацію скриптів (при відсутності знань з розробки та конфігурації скриптів) - це може негативно вплинути на роботу сайту, а в цілому на навантаження на всьому фізичному сервері.
В такому випадку якщо технічна підтримка висилає Вам повідомлення про створення навантаження з боку Вашого сайту, Вам в першу чергу потрібно згадати які останні зміни Ви вносили в конфігурацію скриптів, після цього проаналізувати логи Вашого сайту для аналізу помилок, зазначених в логах.
Якщо немає можливості самостійно оптимізувати скрипти Вашого сайту, необхідно звертатися до розробників даних скриптів або до особистих програмістів.
Зазвичай проблеми з сайтом, викликаних нестачею ресурсів для виконання скрипта, виникають на CMS системах, де основним файлом є index.php, через який відбувається підвантаження контенту сайту і всіх його модулів.
Користувачеві в такому випадку потрібно перевірити всі модулі сайту, підключені до нього, а також спробувати відключити ті модулі, які використовують найбільше ресурсів сайту.
В першу чергу потрібно відключити наступні модулі якщо ваш сайт працює на CMS системі Joomla:
1) відключити пошук по сайту, тобто пошук по всім розділам сайту (наприклад Пошук - Веб-посилання, Пошук - Контакти і т.д.).
Замість цього краще використовувати пошук по сайту, наданий компаніями Google і Yandex.
2) відключити всі редактори, крім того, який Ви використовуєте для роботи
3) відключити модуль Content - Code Hightlighter (GeSHi) (Підсвічування коду в статтях) - за замовчуванням даний плагін в Joomla зазвичай відключений
Крім того, потрібно перевірити шаблон сайту, так як іноді він може бути навантажений графікою і великою кількістю java скриптів.
У разі коли у сайту йде досить багато часу для генерації сторінок, при цьому зміст сторінок майже ніколи не змінюється, можна один раз згенерувати сторінку і зберегти її в файл, а при нових зверненнях передавати інформацію з цього файлу за допомогою функції кешування.
Для зменшення навантаження можна використовувати вбудований кеш Вашої CMS системи (на прикладі Joomla). Ввімкнення кешування однозначно збільшить швидкість завантаження сторінок сайту, а також зменшить навантаження з боку сайту на сервер. Кешування також потрібно ввімкнути і в налаштуваннях модулів Вашого сайту.
Стандартний SEF також може позитивно вплинути на роботу сайту, збільшити його безпеку і підняти завантаження сайту на рівень вище.
Також потрібно перевірити базу даних сайту і виконати її очищення від старих розширень. Періодично потрібно оптимізувати базу даних сайту через PhpMyadmin, попередньо створюючи резервну копію бази даних сайту.
Щоб в майбутньому не виникало проблем з сайтом, потрібно використовувати тільки оптимізовані графічні і мультимедійні файли, бажано не використовувати зображення з інших сайтів, а додавати тільки зі свого сервера.