- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Здравствуйте!
Есть у меня VPS с CentOS 5.7, падает стабильно два раза в день. Конфиг такой- 2 ГБ оперативки, 50 ГБ жесткий диск, процессор 2 ГГЦ. На нем висит порядка 20 сайтов (посещаемость несущественная, не больше 200чел в день).
Я в администрировании ничего не понимаю, помогите разобраться почему падает. Я предполагаю что из-за утечки памяти, ибо top и free -m нам показывают вот что:
Пробовал остановить апач (apachectl -k stop). Ничего не поменялось. В mysql конфиге уменьшил max_connections до 150 (было 1000)- никаких изменений.
Куда копать? Спасибо.
мда, просто наймите человека, ибо total mem = used, а вы еще разрешаете 1к пользователей )))
тупо умножте общий объем баз данных на 150 пользователей и получите объем требуемой вам памяти только под mysql, я не говорю уже про apache и остальные процессы...
тупо умножте общий объем баз данных на 150 пользователей и получите объем требуемой вам памяти только под mysql
а это точно делается так?
я хочу сам во всем разобраться
Похвальное желание исправить проблему самому. Начните тогда читать книги по Linux, Apache и MySQL.
Начните тогда читать книги по Linux, Apache и MySQL.
Какую-то конкретную можете посоветовать? Чтобы она была не отвлеченная от темы, а помогла вникнуть в суть и одновременно найти решение моей практической задачи.
а это точно делается так?
в пики посещаемости будет именно так...
ТС изучать и вникать долго придется, вы сейчас спеца озадачьте чтобы испаравить текущее плачевное состояние, а потом изучайте на основе результатов настройки...
тупо умножте общий объем баз данных на 150 пользователей и получите объем требуемой вам памяти только под mysql
в пики посещаемости будет именно так
Ерунда полнейшая. Размер потребляемой памяти зависит от структуры таблиц, запросов, настроек самого sql сервера. А не от размера базы.
Куда копать? Спасибо.
На скрине куча php процессов. Почему ? Если апаче, то php должен работать через mod_php. А если уж cgi - то тогда php-fpm + nginx или тонкая сборка апача без кучи лишних модулей.
Плюс опять же по скрину, php забрал весь процессор и скорее всего и всю память.
Так что копать в сторону апаче и пхп, почему плодятся и пожирают память процессы. А mysql в данном случае трогать в последнюю очередь, только для оптимизации быстродействия ответа.
Установите в апача максимально число запросов в 20, перегрузите сервер, смотрите как потом будет потребление памяти. Если памяти куча, а вэб сервер стал выдавать ответы медленно - можно еще чуть увеличить процессов, скажем до 25. И так пока не дойдете до 90% занятости памяти.
Ну а дальше уже свои скрипты оптимизировать.
Stek, спасибо большое! Стал играться с MaxRequestsPerChild - стало больше свободной оперативки. В среднем сейчас показывает 200МБ free (почему-то не переводит в swap, просто free).
Похоже я решил проблему, решение которой откладывал давно, но с нового года решил разгрести все задачи. Спасибо, самостоятельно бы долго еще копался! 🍻
---------- Добавлено 02.01.2014 в 12:16 ----------
А не, рано радуюсь.
Просто раньше сразу после перезагрузки сервера память пропадала, в течении минуты. А теперь на это требуется около 15мин- и снова у меня 0.
Сайты все работают как php+fastCGI
А в апаче какие настройки ?
MaxRequestsPerChild - это через сколько запросов перегружать процесс.
"apachectl -V" в консоли, что бы выяснить, какой именно модуль включен. Ну и уже того модуля конфигурацию смотреть, сколько разрешено процессов и т.п.
Выключил mem_cache посмотрю как сейчас в ближайший час себя поведет. В апаче такие настройки теперь:
<IfModule prefork.c>
StartServers 5
MinSpareServers 5
MaxSpareServers 10
ServerLimit 128
MaxClients 128
MaxRequestsPerChild 20
</IfModule>
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule file_cache_module modules/mod_file_cache.so
#LoadModule mem_cache_module modules/mod_mem_cache.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so
LoadModule rpaf_module modules/mod_rpaf-2.0.so
Вот тут вот всякого барахла можно поотключать подумать что не надо, мне кажется
---------- Добавлено 02.01.2014 в 13:04 ----------
MaxRequestsPerChild - это через сколько запросов перегружать процесс.
А что тогда имелось в виду, MaxClients ? Тоже уменьшил до 20, понаблюдаю сейчас
Stek, скажите простой, подчеркиваю простой, для незнающего ничего человека, способ, рассчитать размер необходимой оперативной памяти при 150 посетителях, думаю ваш метод будет не меньшим бредом.
ТС не знаючи, отключать модули не советую...
И ТС - подсказываю: ограничивать надо ServerLimit MaxClients