- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Взял себе VDS. Сайта на нём нету. Используется только для запуска по крону php скриптов, использующих много сокетных соединений. И сейчас катострофически нехватает оперативной памяти.
last pid: 71719; load averages: 0.01, 0.25, 0.56
87 processes: 1 running, 86 sleeping
CPU states: 0.0% user, 0.0% nice, 0.0% system, 0.0% interrupt, 100% idle
Mem: 94M Active, 178M Inact
Swap: 188M Total, 188M Free
PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
71706 root 1 20 0 4416K 2612K pause 2 0:00 2.76% csh
71709 root 1 96 0 2384K 1592K CPU3 0 0:00 2.23% top
68300 root 1 96 0 10128K 7944K select 2 0:00 0.83% php-cgi
71364 root 1 96 0 8840K 6664K select 2 0:00 0.54% php-cgi
60783 root 1 96 0 4700K 4032K select 3 0:01 0.00% sendmail
60789 root 1 8 0 1416K 1116K nanslp 1 0:00 0.00% cron
61475 root 1 96 0 8840K 6688K select 0 0:00 0.00% php-cgi
33197 root 1 96 0 8840K 6688K select 2 0:00 0.00% php-cgi
51874 root 1 96 0 10120K 8120K select 2 0:00 0.00% php-cgi
60688 root 1 96 0 1384K 996K select 0 0:00 0.00% syslogd
76947 root 1 96 0 8840K 6692K select 2 0:00 0.00% php-cgi
8055 root 1 96 0 8840K 6684K select 1 0:00 0.00% php-cgi
68509 root 1 8 0 11352K 8120K nanslp 0 0:00 0.00% httpd
3708 root 1 96 0 8840K 6644K select 2 0:00 0.00% php-cgi
50401 root 1 96 0 8840K 6692K select 0 0:00 0.00% php-cgi
32125 root 1 96 0 8840K 6680K select 2 0:00 0.00% php-cgi
68530 root 1 96 0 10152K 7032K select 0 0:00 0.00% ispmgr
98663 root 1 96 0 8840K 6680K select 3 0:00 0.00% php-cgi
60696 bind 1 96 0 4272K 3212K select 1 0:00 0.00% named
45087 root 1 96 0 8840K 6644K select 3 0:00 0.00% php-cgi
68202 root 1 96 0 10128K 7968K select 2 0:00 0.00% php-cgi
59179 root 1 96 0 8840K 6676K select 2 0:00 0.00% php-cgi
94989 root 1 96 0 8840K 6684K select 0 0:00 0.00% php-cgi
78440 root 1 96 0 8840K 6640K select 3 0:00 0.00% php-cgi
54440 root 1 96 0 8840K 6640K select 0 0:00 0.00% php-cgi
66549 root 1 96 0 8840K 6692K select 2 0:00 0.00% php-cgi
4221 root 1 96 0 8840K 6676K select 1 0:00 0.00% php-cgi
17739 root 1 96 0 8840K 6640K select 1 0:00 0.00% php-cgi
29460 root 1 96 0 8840K 6644K select 0 0:00 0.00% php-cgi
38484 root 1 96 0 8840K 6684K select 2 0:00 0.00% php-cgi
24738 root 1 96 0 8840K 6672K select 2 0:00 0.00% php-cgi
34276 root 1 96 0 8840K 6676K select 1 0:00 0.00% php-cgi
47212 root 1 96 0 8840K 6640K select 2 0:00 0.00% php-cgi
71686 root 1 96 0 6280K 2992K select 2 0:00 0.00% sshd
68510 root 1 96 0 10756K 7808K select 0 0:00 0.00% httpd
67901 root 1 8 0 1724K 1220K wait 1 0:00 0.00% sh
4219 root 1 8 0 1724K 1220K wait 0 0:00 0.00% sh
Нужно освободить оперативной памяти...
Какие модули можно отключить, чтобы апач остался рабочим, и работали php функции сокетов, и функции работы с файлами(чтение, запись)?
Сейчас включени эти:
LoadModule authn_file_module libexec/apache22/mod_authn_file.so
LoadModule authz_host_module libexec/apache22/mod_authz_host.so
LoadModule authz_user_module libexec/apache22/mod_authz_user.so
LoadModule auth_basic_module libexec/apache22/mod_auth_basic.so
LoadModule include_module libexec/apache22/mod_include.so
LoadModule log_config_module libexec/apache22/mod_log_config.so
LoadModule logio_module libexec/apache22/mod_logio.so
LoadModule env_module libexec/apache22/mod_env.so
LoadModule mime_magic_module libexec/apache22/mod_mime_magic.so
LoadModule expires_module libexec/apache22/mod_expires.so
LoadModule headers_module libexec/apache22/mod_headers.so
LoadModule setenvif_module libexec/apache22/mod_setenvif.so
LoadModule ssl_module libexec/apache22/mod_ssl.so
LoadModule mime_module libexec/apache22/mod_mime.so
LoadModule autoindex_module libexec/apache22/mod_autoindex.so
LoadModule suexec_module libexec/apache22/mod_suexec.so
LoadModule cgi_module libexec/apache22/mod_cgi.so
LoadModule vhost_alias_module libexec/apache22/mod_vhost_alias.so
LoadModule dir_module libexec/apache22/mod_dir.so
LoadModule actions_module libexec/apache22/mod_actions.so
LoadModule userdir_module libexec/apache22/mod_userdir.so
LoadModule alias_module libexec/apache22/mod_alias.so
LoadModule rewrite_module libexec/apache22/mod_rewrite.so
LoadModule php5_module libexec/apache22/libphp5.so
LoadModule fcgid_module libexec/apache22/mod_fcgid.so
Также помогите советами, что еще можно сделать в данной ситуации чтобы освободить оперативной памяти. Я пока ещё в этом деле новичёк.
Самый верный способ - докупить еще.
запускать скрипты напрямую, а не через апач
запускать скрипты напрямую, а не через апач
Это как? Я в кроне пишу команду:
/usr/local/bin/php /home/name/....../script.php
ну и всё, апач можете выключить )
Mem: 94M Active, 178M Inact
Swap: 188M Total, 188M Free
С чего вы взяли, что вам не хватает оперативной памяти? Потенциально вободно 178 мегабайт, своп не тронут.
Mage1 добавил 08.04.2008 в 23:18
запускать скрипты напрямую, а не через апач
Кстати да, зачем вам вообще апач?
очередной сервер на котором практически нет активности ;)
2 php процесса в работе как я вижу.. не более)
Mem: 94M Active, 178M Inact
Swap: 188M Total, 188M Free
178M здесь, это дополнительно выделенная VDS негарантированная память, которая якобы по словам firstvds может и не выделяться при ее отсутствии, хотя пока такого не было.
Пробывал отключать апач, после этого процессы php-cgi перестали появляться, т.е. скрипты перестали запускаться, висело всего 8 процессов.
Сейчас еще докупил памяти. Стало 128М.
Вот топ на данный момент.
last pid: 44417; load averages: 0.10, 0.06, 0.05
151 processes: 1 running, 150 sleeping
CPU states: 0.0% user, 0.0% nice, 0.0% system, 0.0% interrupt, 100% idle
Mem: 128M Active, 222M Inact
Swap: 256M Total, 256M Free
PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU COMMAND
44162 root 1 96 0 7820K 5604K select 1 0:00 3.05% php-cgi
79367 root 1 96 0 7916K 5560K select 3 0:06 1.61% php-cgi
39707 root 1 96 0 7780K 5548K select 0 0:00 1.51% php-cgi
71805 root 1 96 0 6824K 4624K select 0 0:05 1.12% php-cgi
44305 root 1 96 0 2488K 1556K CPU3 3 0:00 0.91% top
69433 root 1 96 0 9216K 7016K select 2 0:12 0.00% php-cgi
12059 root 1 96 0 8040K 5688K select 3 0:11 0.00% php-cgi
78399 root 1 96 0 8020K 5664K select 0 0:10 0.00% php-cgi
11506 root 1 96 0 8084K 5884K select 0 0:08 0.00% php-cgi
95720 root 1 96 0 8044K 5700K select 1 0:07 0.00% php-cgi
23272 root 1 96 0 9288K 7088K select 0 0:06 0.00% php-cgi
84870 root 1 96 0 7960K 5756K select 2 0:06 0.00% php-cgi
75982 root 1 96 0 9248K 7048K select 2 0:06 0.00% php-cgi
78398 root 1 96 0 7936K 5584K select 1 0:05 0.00% php-cgi
51610 root 1 96 0 9180K 6980K select 3 0:05 0.00% php-cgi
Т.е. сейчас памяти задействовано 128+222=350Мб
Стоит FreeBSD 6.3
Апач сейчас включен
Среди процессов:
45шт sh
45шт cron
44шт php-cgi
5шт httpd
ну и еще процессы почты, mysqld, inetd, named, и еще пару
и почемуто: 151 processes: 1 running, 150 sleeping, возможно изза того что долго устан-ся сокетные соединения.
Есть какие-нибудь мысли как это всё сделать менее прожорливее?
45шт cron
44шт php-cgi
а ваши php скрипты случайно не запускаются без ограничений по времени? у вас висит их 44 штуки, так задумано? если нет, уберите set_time_limit(0) из скриптов (или в php.ini лимит исправьте, если прямо там установили 0).
Да. Есть такое. Во всех скриптах стоит или set_time_limit(0), или ini_set('max_execution_time', 1000). Кое-где даже побольше 1000.
Но ведь если скрипт дойдёт до конца перед истечением этого времени(или если set_time_limit(0)), то это скрипт должен выгрузиться из памяти. Или я неправильно думаю?