- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте.
На VDS пара десятков мелких сайтов почти без посещаемости, но сервер периодически падает из-за нехватки памяти. После перезагрузки свободно 3гб из 4х, но потихонечку MySQL начинает "толстеть"...
Сам мало чего понимаю в адмистве, погуглил, поставил Zabbix, но "из коробки" не могу найти там, где глянуть что сожрало память перед падением...
Что это у вас? VPS или же выделенный сервер? Если первое, то быть может вы столкнулись с недобросовестным хостером, который сдал вам памяти больше, чем у него есть.
А вообще, как минимум, mysql на каждое соединение расходует n памяти. Чем больше таких соединений одновременно, тем больше памяти он начинает кушать.
Более того, после работы соединение ещё какое-то время висит в ожидании активности (28800 секунд по умолчанию) прежде чем закрывается.
Вам необходимо грамотно настроить mysql основываясь на количестве памяти, которую имеет ваш сервер.
Также возможно утечки памяти есть и в коде. Пока видно, что память у вас жрёт именно mysql, который занят обработкой запросов...
Поставьте mysqltuner, с помощью него сможете увидеть достаточно детальную статистику работы mysql, по которой станет понятнее что происходит.
Также тюнер даст базовые рекомендации, что необходимо исправить в конфигурации мускл, правда слепо следовать его рекомендациям нельзя...
Что это у вас? VPS или же выделенный сервер? Если первое, то быть может вы столкнулись с недобросовестным хостером, который сдал вам памяти больше, чем у него есть.
VPS облако от Hetzner.
На втором графике видно моментальное падение свободной памяти до нуля, мне бы понять, что вызвало его. Гугл говорит, что Zabbix может подсказать, но я не пойму как там посмотреть... в mysqltuner есть история?
Ищите историю здесь:
/var/log/messages
или здесь:
/var/log/syslog
Zabbix. хватит пользоваться детскими игрушками :)
Вызвано это перезагрузкой либо падением... самого сервера либо службы mysql, которая была убита oom killer'ом из за нехватки памяти.
или здесь:
/var/log/syslog
Посмотрите в этих логах информацию говорящую о том, что сработал oom killer
И это всё лишь следствие, не более. Вам надо найти и устранить причину нехватки памяти...
Посмотрите в этих логах информацию говорящую о том, что сработал oom killer
Спасибо. Глянул, есть какая-то "абракатабра", :)
но по времени не совпадает с данными мониторинга...
---------- Добавлено 22.10.2018 в 15:25 ----------
Похоже, проблема вне зоны моей компетенции, даже с помощью гугла и "лечения по фото" на серче... требуется колдунство от спецов :)
Всем спасибо, коллеги.
Ясно, что ничего не ясно... Одно срабатывание и то на apache... В общем гадать по фотографии тут трудно. И да, вам надо обратиться к соответствующему специалисту раз знаний у вас самого маловато.
Как минимум это грамотно настроить Mysql, как максимум - проанализировать код на предмет утечек памяти. Возможно что-то ещё...
Лучше всего найдите специалиста, который вам поможет. Если мало что знаете, то мало что сделаете
Да, уже договорился со спецами.
Просто, странно, что нужно обладать сакральными знаниями, чтобы просто посмотреть какой именно сайт или какая именно БД грузит сервер.:)
Недостаточно просто узнать какой именно сайт или какая бд. Это лишь первый шаг) Вторым шагом уже следует оптимизация кода или же конкретной бд, её структуры, индексов, быть может и самих запросов если возможно.
Понимаю. Но все зависит от сайта (если проблема в сайте), может я его на чистый html переведу, или на шаред перекину, или даже просто грохну :)
В linux команда htop