Зачем многопоточность в web app'ах?

Темы, не касающиеся фреймворка, но относящиеся к программированию в целом.
Ответить
NEW_NAME
Сообщения: 216
Зарегистрирован: 2013.07.15, 09:52

Зачем многопоточность в web app'ах?

Сообщение NEW_NAME »

Сабж. Собственно вопрос зародился от восклицаний "в PHP нет многопоточности, а в X есть". Зачем она может быть нужна в данном случае?
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Зачем многопоточность в web app'ах?

Сообщение lancedevnull »

NEW_NAME писал(а): в данном случае?
в каком именно?)) все же зависит от ситуации, к примеру ресайз картинок, т.к. пхп не многопоточен то при множественных запросах они встанут в очередь и пока картинка первого юзера не переизменится, второй будет ждать, что чревато таймаутом третьему
NEW_NAME
Сообщения: 216
Зарегистрирован: 2013.07.15, 09:52

Re: Зачем многопоточность в web app'ах?

Сообщение NEW_NAME »

Ну по идее же, если несколько ядер, то можно было бы организовать, чтобы для каждого вызова в апаче свой поток был, соответственно и своя обработка php. Я не знаю, как на самом деле работает, но это звучит как-то очевидно. По-крайней мере если php.exe один на всех, то в cgi режиме же каждый раз заново должно запускаться, следовательно и на несколько запросов разные процессы можно.
NEW_NAME
Сообщения: 216
Зарегистрирован: 2013.07.15, 09:52

Re: Зачем многопоточность в web app'ах?

Сообщение NEW_NAME »

в каком именно?))
В случае веб приложения. Даже не сервиса обработки какой-то чего-то. Хотя если много человек чего-то обрабатывают, то тогда просто несколько экземпляров обрабатывающего приложения можно вызывать, и проц будет загружен.
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Зачем многопоточность в web app'ах?

Сообщение lancedevnull »

много ядер поддерживает многопоточный софт :-D
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Зачем многопоточность в web app'ах?

Сообщение lancedevnull »

NEW_NAME писал(а):По-крайней мере если php.exe один на всех, то в cgi режиме же каждый раз заново должно запускаться, следовательно и на несколько запросов разные процессы можно.
теоретически ты можешь запустить несколько демонов на разных pid и на разных портах, по сути и будет многопоточность, но это все костыли, да и в теории, проще юзать сервера очередей или смени часть софта на другой язык
NEW_NAME
Сообщения: 216
Зарегистрирован: 2013.07.15, 09:52

Re: Зачем многопоточность в web app'ах?

Сообщение NEW_NAME »

Я подумал. Я ведь имел ввиду многопоточность внутри самого скрипта, а не про многопоточность во вне, в httpd и как там все устроенно))
Но вообще странно, если апач автоматом разные http запросы на разных ядрах не обрабатывает.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Зачем многопоточность в web app'ах?

Сообщение samdark »

Очень хорошо, что в PHP нет многопоточности.
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Зачем многопоточность в web app'ах?

Сообщение lancedevnull »

Sam Dark писал(а):Очень хорошо, что в PHP нет многопоточности.
в чем плюсы? :o
NEW_NAME
Сообщения: 216
Зарегистрирован: 2013.07.15, 09:52

Re: Зачем многопоточность в web app'ах?

Сообщение NEW_NAME »

Sam Dark писал(а):Очень хорошо, что в PHP нет многопоточности.
А есть же pthread. Если я из названия правильно понял, что он делает.
Аватара пользователя
anton44eg
Сообщения: 2716
Зарегистрирован: 2012.01.25, 13:37
Откуда: Киев

Re: Зачем многопоточность в web app'ах?

Сообщение anton44eg »

Ну как сказать. Вот в питоне простейший пример

Код: Выделить всё

map(fetch_url, [url1, url2, url3])
 
Разбросает по ядрам и будет выполняться параллельно. Там, конечно, не реальная многопоточность, но все же.
NEW_NAME
Сообщения: 216
Зарегистрирован: 2013.07.15, 09:52

Re: Зачем многопоточность в web app'ах?

Сообщение NEW_NAME »

А зачем? Если на сайте не 2 посетителя в час. Итак процессор можно нагрузить, если посетителей нормальное кол-во.
Аватара пользователя
anton44eg
Сообщения: 2716
Зарегистрирован: 2012.01.25, 13:37
Откуда: Киев

Re: Зачем многопоточность в web app'ах?

Сообщение anton44eg »

так оно и io разделяет, т.е. выполняет их параллельно, а не по очереди
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Зачем многопоточность в web app'ах?

Сообщение lancedevnull »

NEW_NAME писал(а):
Sam Dark писал(а):Очень хорошо, что в PHP нет многопоточности.
А есть же pthread. Если я из названия правильно понял, что он делает.
где то тут есть описание его минусов, он в одном окружении с константами работает и еще там какие то минусы, погугли
lancedevnull
Сообщения: 1268
Зарегистрирован: 2013.07.17, 17:37

Re: Зачем многопоточность в web app'ах?

Сообщение lancedevnull »

lancedevnull писал(а):погугли
забываю, что многие не умеют же :oops:
Ответить