Если есть какой-либо способ, я рекомендую вам настроить NodeJS и SocketIO для длительного опроса. Ваш веб-сервер должен держать запрос открытым для каждого подключенного пользователя, и это больше, чем Apache / PHP может обрабатывать очень долго.
Если это невозможно, я рекомендую короткий опрос, выполняя обычный запрос ajax каждые 3 секунды. Это не идеально, но управляемо.
Я недавно ответил на похожий вопрос: подробнее .
Независимо от языка, я настоятельно не рекомендую писать свой собственный длинный сервер опросов, если только вы не хотите, чтобы он был вашим проектом в течение нескольких лет. Я был в проекте, в котором использовался самодельный длинный сервер опроса, написанный на C, а затем переписанный на Java, и это было не красиво.