Этот сервер использует слишком много оперативной или виртуальной памяти? (экран прилагается) [закрыт]

У меня есть VPS с 512 МБ оперативной памяти 40 ГБ 1 ЦП, я запускаю на нем небольшую службу парковки доменов. .

Он есть в CentOS, MySQL, Apache и т. Д.

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

Общий размер файлов домена (папка www) не превышает 100 МБ!

Я смотрю вокруг и не вижу, что может вызвать это «злоупотребление хранилищем», они сказали, что это виртуальная память, которая записана в их хранилище, несколько сотен МБ.

  1. Разве это не нормально, как показано на экране webmin?
  2. Указывает ли это на какие-либо проблемы в прикрепленной команде "top"? (например, 772 МБ виртуальной памяти mysqld).

Единственная известная мне перегрузка - это скрипт php, который запускается один раз в час для обработки всей статистики домена, занимает 3 минуты и, кажется, заставляет ЦП работать :)

Редактировать: Я добавил второй экран верхней команды, показывающий недостающие данные над списком процессов.

memory usage shown in Webmin

top command output

top command output 2

0
задан 11 April 2013 в 23:54
3 ответа

Это всего лишь предположение, но это слишком долго для комментариев, так что приступим.

С виртуальными частными серверами вы получаете «кусочек» реального сервера. Вместо того, чтобы тратить, скажем, по 500 долларов каждый на 24 небольших сервера с оперативной памятью 512 МБ и т. Д., Дешевле купить (и эксплуатировать) один сервер стоимостью 3500 долларов с 12 ГБ оперативной памяти и двумя шестиядерными гиперпоточными процессорами.

Уловка: этот сервер может продать более 24 фрагментов. Это нормально: они не ожидают, что все будут использовать все свои ресурсы постоянно. Если у вас их достаточно, вы можете профилировать своих клиентов и незаметно перемещать клиентов в конфигурации, где вы уверены, что они не наступят друг другу на пятки - по крайней мере, при нормальных обстоятельствах. Опять же, это нормальная практика, и в этом нет ничего плохого, если делать это аккуратно. Существует вероятность того, что ненормальная рабочая нагрузка вызовет проблемы, но это часть того, что делает этот вариант экономичным; если вам нужна услуга там, где это невозможно, вы платите больше за такую ​​услугу, как арендованный физический сервер в пространстве colo.

Теперь я предполагаю. Что произойдет, если они слишком сильно увеличат подписку на сервер? Кому-то остается держать короткий конец палки, и у него есть только виртуальные ресурсы. Их «RAM» на самом деле полностью дисковая, и ее нужно менять местами. Обычно это распределяется между всеми машинами, но в правильных ситуациях одну из них можно оставить без внимания. Это ты. С их точки зрения, ваша машина делает странные вещи. В их инструментах мониторинга им кажется, что вы злодей, хотя на самом деле вы - жертва. Хороший провайдер распознал бы это,

4
ответ дан 4 December 2019 в 11:30

Взгляните на поле virt в выводе вашей верхней команды. У вашего VPS 512 МБ памяти, но apache требует гораздо больше памяти, что, вероятно, объясняет, почему у вас 4 ГБ виртуальная память. Со всеми этими потоками apache виртуальная память будет постоянно переключаться, что приводит к высокому количеству операций ввода-вывода.

Почему apache потребляет так много памяти? Прежде всего проверьте журналы apache и посмотрите, не заметите ли вы чего-нибудь необычного. Если вы что-то найдете, сообщите об этом, включая образцы, и, возможно, мы сможем предоставить более конкретную помощь.

Возможно, ваши PHP-скрипты для построения статистики не завершаются должным образом, однако я предполагаю, что вы установили максимальное время выполнения PHP к чему-нибудь разумному, чтобы предотвратить сбой ваших скриптов?

Перезапустите apache и проследите за использованием памяти, сколько времени пройдет, прежде чем он начнет занимать много-много места подкачки? Судя по вашему времени безотказной работы около 7 часов, не очень долго.

Я не знаю подробностей о вашем PHP-сайте, но полагаю, что простой сайт парковки домена не должен использовать слишком много ресурсов. У меня есть VPS, который мы используем в нашей компании, он запускает приложение собственной разработки с серверной частью MySQL, которое довольно активно используется примерно 30 сотрудниками каждый день, и он не потребляет почти столько памяти, сколько ваш.

Судя по средней нагрузке, ваш процессор довольно интенсивно загружен, но, скорее всего, это связано с тем, что происходит подкачка. Разберите проблему с Apache, потребляющим так много памяти, и я уверен, что все станет намного лучше.

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

1
ответ дан 4 December 2019 в 11:30

Your httpd processes are using up more RAM than you physically have available, thus something has to get swapped. (It's also interesting that in the screenshot showing this, you cut off the top, and that you restarted Apache before taking the second screenshot. What are you hiding?) You need to reduce the system's memory usage dramatically, most likely by reducing the number of simultaneous httpd processes, or get more RAM.

That said, the host should be rate limiting this sort of thing already, which is not too difficult; perhaps they just don't know how? When you decide to get more RAM (you will), get a new host as well.

0
ответ дан 4 December 2019 в 11:30

Теги

Похожие вопросы