Утечка памяти Comet Server в PHP - PullRequest
3 голосов
/ 26 мая 2011

Почему сервер Comet, такой как Tornado, особенно подвержен утечкам памяти, если записан в PHP?

Существуют ли подлинные недостатки, характерные для PHP для реализации длинной структуры / службы опроса, такие как Tornado?

Спасибо

1 Ответ

4 голосов
/ 26 мая 2011

Суть этого в том, что PHP изначально был написан с намерением иметь совершенно новый процесс для каждого запроса, который вы могли бы просто отбросить, как только запрос закончился, в то время, когда такие вещи, как Comet и длительный опрос, не были действительнона столе.

Таким образом, существует довольно много областей, в частности, сборщика мусора, где в самом начале PHP просто не был создан для работы в течение длительного периода времени, и ему было все равно.потому что каждый http-запрос получал новый экземпляр php.

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

...