myhand

Рейтинг
278
Регистрация
16.09.2009
Romka_Kharkov:
но я считаю что шансы потерять данные на google хранилище в разы выше чем на собственном VPS, я не буду сейчас обсуждать техническое оснащение google оно явно превосходит любой ВПС, но именно в этом и проблема, к google drive обращаются сотни тысяч пользователей в минуту наверное (если эта услуга так популярна) соответственно гораздо выше шанс отказа в обслуживании

Первый раз слышу о том, что шанс отказа в обслуживании коррелирует с посещаемостью ресурса.

Не хочу хвалить гугл, но для них паттерн "проектирования" "тяп-ляп" - не характерен.

Romka_Kharkov:
если у вас VPS или хранилище хотя бы с RAId-1 то это куда лучше google хотя бы по тому, что вы видите состояние своих дисков и состояние массива данных.... в случае гугла вы ничего не видите и не знаете вообще.

Кто запрещает периодически делать контроль целостности данных?

Andreyka:
Nfs работает в двух режимах
Один вешает сервер
Второй портит файлы

Да, NFS часто вызывает проблемы у новичков.

Andreyka:
Какой у вас?

Режим нормальной работы.

ТС, посмотрите - может это известный баг:

http://wiki.linux-nfs.org/wiki/index.php/NFS:_directory_XXX_contains_a_readdir_loop_seems_to_be_triggered_by_well-behaving_server

Естественно, лучше ядро сперва обновить до свежих версий в репе.

Andreyka:
В центосе медленная работа чпых скрипта не приводит к сегфолту.

Много еще где "не приводит". Например, в Debian.

Тоже решил связать ужа с ежомсегфолт и "медленную работу" по фотографии?

Reise:
И тут решил глянуть в общий лог nginx и офигел:
2.176.12.83 - - [12/Aug/2012:17:18:27 -0500] "ET /?u=h2vzl4334lhq1t0d70br4b1j980jgen1 HTTP/1.1" 403 169 "-" "Mozilla/100"
85.102.126.46 - - [12/Aug/2012:17:18:27 -0500] "\x00" 400 173 "-" "-"

Чудные запросы какие-то. Вы уверены, что первый из них процитирован нормально (скорее всего там обычный GET)? Метода ET в природе нет - в логе была бы 501 ошибка.

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

Andreyka:
В нормальном дистре пчих не падает с сегфолтом.

Ну, настолько "нормального" дистрибутива в природе нету. Ошибки есть везде, кроме вашей персональной параллельной Вселенной.

zexis:
Куда вы предлагаете диск вставлять?

В сервер. Обычно можно вставить несколько дисков, а у ТС, судя по данным - аж только целый адын. // ваш кеп

Только если это почему-то (???) составляет проблему - стоит задумываться о том, чтобы хостинг покупать.

mloezk:
Пять пользователей могут одновременно запросить динамику... может быть еще хуже, если каждый запросить несколько запросов к php

И "одновременно" ее получат... Разница невелика, если скрипты не по секунде отрабатывают. Будет больше запросов к динамике - подождут в backlog. Если увеличите maxclients - выжрут при этом больше памяти и будут тоже ждать, просто в разных местах обработки скрипта. Что лучше - хороший вопрос, но с необходимостью выставить maxclients > 20-30 сталкивался достаточно редко.

mloezk:
Раз Вы такие умный, что не посоветовал отдельный php-fpm...

Патамушта я умный и учитываю кому и что советую. Это может быть непростым для ТС.

mloezk:
А еще можно формулу привести max_children=(ALL_MEMORY - (NGINX/MYSQL/etс)) / 25M (точное значение узнать в ps)

Ну, на таком уровне я ее привел. Только формулой язык назвать не поворачивается.

mloezk:
В PHP было много ошибок... есть ошибки SIGSEGV

Не сомневаюсь. Просто ваше предположение о какой-либо связи сегфолта и превышения max_children из области "почему бы и нет". Только и всего.

mloezk:
Превосходно знаю HTTP. Не вижу аргументов.

Покуда "процессы" с "пользователями" путать будете - и не увидите. 5 - это просто столько одновременных обрабатываемых (не в беклоге, форкнут процесс) запросов к бакенду. Не больше. Одновременных "пользователей" же на сайте может быть за сотни.

mloezk:
Вы не понимаете зачем нужен лимит и почему он равен 5.

Правда? 😂

mloezk:
весть софт по дефолту не должен вызывать OOM, на любом железе. С учетом max_memory 128M выбрали маленький max_children...что бы скрипты, которые могут использовать 128M не вызывали OOM.

Ну, "супер-админы" вызовут ООМ иначе - отдадут всю память толпе php-fpm, так? Впрочем, им даже больше "повезет" - сервер просто уйдет в своп.

mloezk:
Мне жалко ваших клиентов, которые работают на дефолтных настройках PHP...

Вас закоротило?

То, что кто-то не рекоммендует менять настройки тупо и бездумно - не значит что он никогда их не меняет. Ровно наоборот. ТС нужно учесть потребление памяти, убедиться что медленные скрипты починить не получится, убедиться что на ваши 100 чайлдов (или скока?) php-fpm ее хватит (и еще останется всяким mysql, кешам файловой системы и проч и проч) - и только после этого что-то менять.

PS: А вообще, если для скриптов сайтов типична работа в виде "прокси" (парсеры контента внешних сайтов) - это может быть случай, когда не нужно было городить всякие nginx-сы и ТС хватило бы обычного апача.

landan:
скорее придется так и сделать.

Вставить диск для бекапа не судьба? Сомневаюсь, что хостинг выйдет дешевле - если "инфы много" (ц).

landan:
Если обратиться в саппорт, вроде-бы должны бесплатно менять, нет?

Для арендованного-то сервера? Конечно :)

mloezk:
Да, это Seagate. Для Seagate Raw_Read_Error_Rate и Seek_Error_Rate бесполезны и их можно игнорировать.

Тут соглашусь с данным оратором. Для сигейтов эти показатели "второстепенны".

poiuty:
Так же проверьте состояние рейда.

Вы где рейд-то углядели? 🍿

Ну, разве что это тонкий намек на то, что оный ТС весьма не повредил бы. Замена одинокого диска куда более "болезненный" процесс чем в любом типе райд с некоторой отказоустойчивостью.

Reise:
Так я знаю где эти медленные скрипты

Собственно, я и не вам отвечал :)

Reise:
Проблема как раз в наличии медленно работающих скриптов. Баг начал проявляться после того, как та система с медленными скриптами была добавлена на сервер.

Да, я тоже склонен так думать. И писал вам об этом выше.

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

mloezk:
Это не моя фантазия

Ваша. Вы не обращаете внимание даже на то, что ошибки никак не коррелируют.

mloezk:
читай ответ автора темы.

Ага, внимательно. "Автор темы" совершенно не представляет - являются ли для него проблемой сегфолты, не говоря уже о какой-то "связи".

mloezk:
5 процессов это не более 5 пользователей включая внутренний запросы.

Да ну :) Мы еще и как работает HTTP не знаем?

Даже ТС понимает, что с вашей "арихметикой" - рановато еще выбираться из школы...

mloezk:
Обычный дефолт для средних серверов 100-150.

Ну-ну. Для тех, кто не понимает для чего данный лимит нужен, зачем вообще системный администратор серверу и не постесняется отдать ~4Gb "просто так" толпе "нервно курящих" php-fpm детей (20/30Mb - вполне типичные значения).

mloezk:
Если для Вас pm.max_children=5 нормально, то вы наверно обслуживаете VPS-ы за $10.

Телепатия искрит...

Andreyka:
Ну раз нет желания пускать за свой сервер, то я даю правильный путь
1. Собрать php с debug

В нормальном дистрибутиве должно быть достаточным установить пакеты с отладочными символами.

mloezk:
Да, могу привести аргументы. Например вызов какой-то функции стал медленным и поэтому стало не хватать количества процессов. SIGSEGV случается в этой же функции.

Самого "интересного" не рассказали - таки причем сегфолт к какой-то "медленности вызова функции"?

Тем паче, что "связь" настолько странная - что даже во времени никакой корреляции не видно. Или чукча просто не читатель?

mloezk:
Достаточно увеличить в 2-20 раз, нет смысла увеличивать в 200 раз количество процессов.

"Отсюда не видно", что имеет смысл увеличивать что-то даже и в два раза, не то что в 20. Забыли в подписи вывеску "лечим по фотографиям"?

mloezk:
Ссылка на инструкцию

Которая абсолютно никак не поможет ТС найти "тяжелые" скрипты.

Еще раз: баг в каком-то модуле php (пример возможной причины сегфолта) и наличие медленно работающих скриптов - связаны только вашей фантазией.

Всего: 4890