В чем разница между Nginx и Apache? - PullRequest
0 голосов
/ 07 мая 2011

Я не совсем понял, в чем разница между Nginx и Apache?

Я хочу использовать технику PHP Comet для чата. Мне так нравится:

while($modification_date == filemtime($filename)) { 
    sleep(2); 
}

//$filename was updated and we retrieve new messages and give them to the user with JSON help

Это, конечно, не работает в Apache. Будет ли это работать в Nginx?

Не предлагайте мне NodeJS и прочее, пожалуйста.

Ответы [ 2 ]

2 голосов
/ 07 мая 2011

Основное различие между Apache и Nginx состоит в том, что один - управляемый потоком, а другой - управляемый событиями.Но я думаю, что ваш вопрос не ясен.Они не имеют ничего общего с вашим фрагментом кода.И сначала объясните, почему это не сработает в Apache.

1 голос
/ 08 мая 2011

Nginx не делает этот код автоматически. Он будет сосать так же плохо, как и в Apache. Основная проблема заключается в том, что PHP не является потокобезопасным, и для каждого запроса требуется один разветвленный PHP-процесс для его обработки. Это приводит к безумно большим объемам необходимой оперативной памяти для масштабирования до чего-либо приличного размера. Nginx может обойти эту проблему с помощью другого стиля программирования (кометы) и помощи расширения .

...