Олекс
а точно
Олекс
спс
Anonymous
вспомнил
Anonymous
нез
Игорь
Сколько одновременно соединений (параллельно) может обработать NGINX?
= числу рабочих процессов (примерно равное кол-ву ядер рабочей машины)?
Sergey
Олекс
where ID IN (132, 156, 19402, ..., 49353)
Кстати я генерирую парметры в js и передаю их в php с помощью ajax, потом я эти параметры принимаю в переменные, вопрос как мне динамически создавать переменные?
Например при первом запросе мне нужно вывести 3 записи по их айди, при втором 5 записей, при третьем 6 записей. Каждый раз мне нужно подставлять разные значения, вот как мне это сделать?
Игорь
Да как так-то, если каждый рабочий процесс - однопоточный (он же однопоточный?).
Sergey
однопотомный, но соединения обрабатываются без блокировки потока
Игорь
Хорошо, тогда мне интересно, что будет:
*Дано*
одна страница с простым *echo;* (запрос приходит и обрабатывается быстро)
одна страница с бесконечным циклом *while(true)* (зависает)
4 ядра (4 рабочих процесса)
5 последовательных запросов:
1) Запрос на страницу с циклом
2) Запрос на страницу с циклом
3) Запрос на страницу с циклом
4) Запрос на страницу с циклом
5) Запрос на страницу с echo
*Вопрос*:
• Получит ли 5-ый запрос свой echo
Sergey
Игорь
В NGINX есть такой термин, как рабочий процесс.
Sergey
тогда сможет
Игорь
Sergey
nginx мало на что тут влияет, всё от php-fpm зависит
Игорь
Вот интерпретатор php по сокету сколько запросов сможет обработать? Один?
Sergey
1 запрос на 1 обработчик
Игорь
Спасибо, но теперь я запутался совсем в край. с:
Sergey
nginx без проблем отработает пол миллиона запросов в секунду
но он не имеет никакой динамики, всё отдается на внешний обработчик к примеру php-fpm
Игорь
Я думаю, что распутаюсь, если пойму, что такое "неблокируемый режим"
Sergey
а вот php-fpm уже однопоточный и синхронный, и его производительность зависит от количества оработчиков и скорость выполнения скрипта
Sergey
Игорь
Таненбаума читал, лабы делал, задача курсача была написать web-server. Собсно, основываясь на своём опыте и появляются вопросы.
Тенпеннай
Игорь
т.е. я вполне представляю что такое потоки и как они работают. Ошибки, связанные с общими ресурсами, я вполне могу отыскать.
Игорь
Да, я так делал в курсаче.
Игорь
Или почти так (вместо потоков создавал процессы.)
Игорь
Пардон возможно за глупый вопрос (если предидущие вопросы ещё вы не посчитали глупыми), но что означает "работающий поток"?
Игорь
Т.е. если рабочий процесс однопоточный, то какому потоку передаётся обработка?
Игорь
Да, это я понимаю.
Тенпеннай
Sergey
скорее всего он писал про рабочий процесс, а не поток
Игорь
И количество этих рабочих процессов (однопоточных) ограничено директивой worker_processes, которая чаще всего принимает значение, равное количеству ядер процессора.
Sergey
количество зависит от того какое у тебя приложение, блокируеще или нет
Don
Don
Надо делать на tcp
Don
Проверено и на стаковерфлоу тоже такое пишут )
Игорь
Будем имет в виду.
Don
не ограничено
Кол-во доступных портов, сколько их там.. около 65к
Don
А вообще, нгинкс от 20к запросов тачку загнет
Sergey
Don
Как нет)
Sergey
Sergey
на 1 порту может быть 65к соединений на 1 ip на 1 порт
Sergey
если у тебя сервер на 80 порту, то 1 клиент может установить 65k*65k соединений
Don
Sergey
net.core.somaxconn, по умолчанию 128 соединений в 1 сокете
Тенпеннай
эй, пес
Тенпеннай
съеюи отсюда
Тенпеннай
и хуйню свою возьлми
Vadim
😀Дальше😀
Vladimir
Можно
Vladimir
В чем проблема то?
Anonymous
Админы спят?
Anonymous
Лол)
Из стартапов то же самое вычищаю, а тут все спят
🐴
Админы никогда не спят
Muzaffar
здрава желаю товарисчи
Muzaffar
как думаете где лучше использовать фор а где форич
🐴
Muzaffar
:)
🚀 Snyp
Dmitriy
👍🏻
Dmitriy
😀Дальше😀
Anonymous
adikalon
какую кодировку нынче лучше указать для mysql? utf8mb4_unicode_ci?
Anonymous
Sergey
Sergey
*_unicode_* - очень специфическая кодировка
adikalon
в чем разница unicode vs general? когда-то читал но забыл(
Sergey
general не проводит дополнительных проверок, и просто пишет любые данные
Sergey
unicode проверяет что символы присутствуют в стандарте unicode
Anonymous
всем привет
Anonymous
и тут все заглохли
adikalon
Что касается новых версий кодировки utf8mb4_general_ci и utf8mb4_unicode_ci. То предпочтительной является unicode, а не general. Вариант utf8mb4_general_ci будет чуть более быстрым при сортировке (в настоящее время это уже неактуально), но имеет проблемы с сортировкой в определённых языках. Кодировка utf8mb4_unicode_ci лишена этих недостатков.
Anonymous
круть
Sergey
adikalon
там написано одно, ты говоришь другое. Кому верить?
Sergey
там про вставку и обновление ничего не было