PDA

Просмотр полной версии : Сколько максимально подключений выдержит пхп с сокетами


Krist_ALL
06.05.2009, 23:10
В аргументах функции socket_listen нужно указывать максимальное колличество подключений. Написана что очень большое число ставить нельзя, и есть ограничения связанные с осью сервера... Конкретно максимальное число не сказано. Скажите что это за число? Мне нужно большое число. Как быть?

Gifts
07.05.2009, 07:29
Krist_ALL Человеческая жадность что ль? Не знаю что, но надо больше ^^

backlog - это максимальная очередь соединений ожидающих подключения. Вы собираетесь делать на ПХП сокет-сервер, принимающий по 1000 соединений в секунду? Плохой план

Для увеличения SOMAXCONN - To change the maximum allowed backlog by your system (*nix machines only), first you need to find the variable for this limit:

sudo sysctl -a | grep somaxconn

On ubuntu boxes, it returns net.core.somaxconn (you need to look for the 'somaxconn' variable, the full name will vary across different systems).

Update this to a large number as follows:

sudo sysctl -w net.core.somaxconn=1024

This will work straight away. no restart required.

Krist_ALL
07.05.2009, 12:43
Да,я хочу сокет сервер,и мне сказали что максимальное значение хранится в пхп.Ини... И оно маленькоена хостингах,придеца выделеный виртуальный сервер покупать

Gifts
07.05.2009, 16:50
Krist_ALL Ключевые слова не "сокет-сервер", а "принимающий 1000 соединений в секунду" и НЕ успевающий обработать эти соединения.

Выделю еще больше - это количество соединений ОЖИДАЮЩИХ подключение. То есть до использования socket_accept. Вы сможете реализовать нагрузку в 100+ одновременных подключений и медленный скрипт, который будет очень долго обрабатывать текущие соединения, прежде чем принять новые?

Опять таки - сокет-сервер, это задача НЕ для пхп, а для других языков, с многопоточностью, блекджеком и прочими прелестями)

slav0nic
07.05.2009, 16:52
а вы знаете как абривиатура PHP расшифровывается?)
писать на рнр сервер - мега дибилизм, уж простите

лучше уже perl/python и тп
я на питоне и 3-5к req/sec делал ;)

Krist_ALL
07.05.2009, 17:21
Пхп для веб,значит не дибилизм. Я думаю, может как то распределить нагрузку.Сделать несколько копий скрипта и распределять нагрузку...

Gifts
07.05.2009, 17:32
Krist_ALL На костылях можно бегать - но не значит, что это стоит того. ПХП - не для веб, это ХТМЛ препроцессор, не более. Учи питон, как тут правильно советуют

Krist_ALL
09.05.2009, 15:05
Мне кажется 500 подключений скрипт выдержит,м?