Сведения о вопросе

Oleksandrop

05:01, 2nd October, 2020

Как измерить нагрузку на веб-сервер (LAMP), создаваемую каждым отдельным сайтом?

Просмотров: 330   Ответов: 8

Здравствуйте. Есть более или менее стандартный LAMP-сервер на Ubuntu Server, на котором крутится десяток сайтов.


Каждый сайт живёт как отдельный виртуальный хост Apache2 с модулем php5, Apache работает от одного юзера www-data. MySQL-база у каждого сайта отдельная и доступ к ней сделан через отдельного MySQL-юзера.


Вопрос к знатокам: каким образом померить моментальную (или за небольшой период) нагрузку, создаваемую каждым сайтом (понять сколько памяти, процессора, а может быть даже и диска он съедает)?



  Сведения об ответе

PIRLO

03:10, 29th September, 2020

Варианты:
1. apachetop
2. Поставить nginx на фронтенд, заставить писать в логи $upstream_response_time и небольшим скриптом парсить хвост лога.
3. Статья.
4. Банальный путь: поставить mpm-itk, разделить сайты, дав каждому своего системного юзера. Созерцать top.
5. Для mysql: mytop.


  Сведения об ответе

COOL

15:13, 29th September, 2020

Отключить остальные =) В идеале отключить все сайты и посмотреть, сколько ресурсов съедается на холостых, а потом включить нужный сайт. На все про все уйдет минут 10 (возможно дольше, если хотите более точные результаты). Еще можно задействовать loadimpact.com/


  Сведения об ответе

VCe znayu

16:00, 28th September, 2020

munin-monitoring.org/ как раз дял такого и создан. Примеры статистики по разным сайтам наодном сервере: munin.ping.uio.no/


  Сведения об ответе

pumpa

00:43, 29th September, 2020

mpm-itk + acct (встроенный аккаунтинг) учтёт нагрузку от вебсервера и интерпретатора (если это mod_*), но не учтёт нагрузку от БД, которая во всех случаях крутится от имени mysql.

Если вам нужно найти виновного, то этот вариант — идеально подходит.


  Сведения об ответе

screen

13:17, 27th September, 2020

По крайней мере, частично эти задачи можно решить при помощи Apache2::Profiler.


  Сведения об ответе

appple

12:15, 28th September, 2020

никак в том виде что вы написали
по статистике нужно выяснить теоретически кто может грузить сервер и их перенести на VPS (как вариант что бы отделить нагрузку) и далее мерять нагрузку от отдельного сайта


  Сведения об ответе

ЯЯ__4

03:08, 29th September, 2020

Парсить вывод server-status


  Сведения об ответе

ЯЯ__4

22:20, 26th September, 2020

когда я работал в суппорте провайдера, то у нас разные виртуальные хосты работали от разных пользователей. И тогда нагрузку можно считать по пользователям


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться