- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
О сервере: Debian 7, mysql, nginx, php-fpm и больше ничего.
По вечерам nginx зачастую выдает 502 bad gateway.
Есть ли возможность перенести как-то нагрузку на файлы announce.php shoutbox.php и scrape.php на отдельные php-fpm пулы? и как это можно сделать? спасибо за возможную помощь.
Конфиг пула домена:
[domain.ru]
# Сокет, с которым работает хост
listen = /var/run/domain.ru.sock
user = user
group = user
listen.mode = 0666
chdir = /home/user/data/www/domain.ru/
php_admin_value[info_tmp_dir] = /usr/share/tmp
php_admin_value[soap.wsdl_cache_dir] = /usr/share/tmp
#php_admin_value[date.timezone] = Asia/Moscow
# тут значения можно поменять, в зависимости от нагрузки на сайт
#process.max = 128
#emergency_restart_interval = 5m
rlimit_core = unlimited
#process.priority = -19
pm = dynamic
pm.max_children = 50
pm.start_servers = 16
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 200
request_terminate_timeout = 90s
#request_slowlog_timeout = 5s
pm.max_requests я бы увеличил.
А ответ на ваш вопрос находится в логе php-fpm
/var/log/php-fpm.log
Возможно нехватает кол-ва процессов.
Да, можете разнести, настроив отдельные locations в nginx, которые будут отправлять на нужные Вам пулы. Но Вы уверены, что сможете правильно настроить количество процессов, которые Вам необходимы?
pm.max_requests я бы увеличил.
А ответ на ваш вопрос находится в логе php-fpm
/var/log/php-fpm.log
Возможно нехватает кол-ва процессов.
поднимал до 500, все так же была 502-ая через раз вчерась вечером.
в логах ничего нет, кроме ошибки на попытку использования неверного параметра:
[28-Oct-2014 20:01:17] ERROR: failed to post process the configuration
[28-Oct-2014 20:01:17] ERROR: FPM initialization failed
---------- Добавлено 29.10.2014 в 16:41 ----------
Да, можете разнести, настроив отдельные locations в nginx, которые будут отправлять на нужные Вам пулы. Но Вы уверены, что сможете правильно настроить количество процессов, которые Вам необходимы?
Спасибо за наводку про локейшены. да, конечно, же - путем реального мониторинга могу выставить нужные значения..
Тут хотелось бы услышать про примеры в nginx.conf
например для файла announce.php, предполагаю будет так :
location ~\announce.php$ {try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/announce.sock; # Сокет php-fpm
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
Поправьте меня, пожалуйста, если не так.. спасибо
"location ~ /announce.php$ {"
И отключите fix_pathinfo в php, сможете избавиться от костыля с fastcgi_split_path_info.
"location ~ /announce.php$ {"
И отключите fix_pathinfo в php, сможете избавиться от костыля с fastcgi_split_path_info.
спасибо, тогда try_files заменим на : try_files $document_root$fastcgi_script_name =404; ?
Какая версия php-fpm?
Shardik, try_files трогать не надо, подойдут переменные из стандартной конфигурации nginx
Конечно можно
Заводите отдельный пул, назначаете в локейшенах использование этого пула
спасибо.. поставил сервер с новыми конфигами, жду вечера.. и отпишусь с утра, как прошло
---------- Добавлено 29.10.2014 в 18:01 ----------
Какая версия php-fpm?
# php5-fpm -v
PHP 5.4.4-14+deb7u14 (fpm-fcgi) (built: Aug 21 2014 08:40:57)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
with XCache v2.0.0, Copyright (c) 2005-2012, by mOo
---------- Добавлено 29.10.2014 в 18:03 ----------
Shardik, try_files трогать не надо, подойдут переменные из стандартной конфигурации nginx
хорошо, пусть будет так:
location ~\announce.php$ {
try_files $uri =404;
#fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/announce.sock; # Сокет php-fpm
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
location ~\scrape.php$ {
try_files $uri =404;
#fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/scrape.sock; # Сокет php-fpm
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
location ~\shoutbox.php$ {
try_files $uri =404;
#fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/shoutbox.sock; # Сокет php-fpm
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
А зачем вам вообще "высоконагруженный" трекер на php ? Это изначально проигрышный вариант. У вас один пользователь, который даже на сайт неделями не заходит, но раз в несколько минут круглосуточно нагружает запросами.
Бросайте это. смотрите в сторону XBT Tracker и т д
Это чат ? то же совет. Толку мало, а нагрузки много.