Отправить HTTP-запрос от PHP, не ожидая ответа?

Я хочу получить HTTP-запрос GET от PHP. Пример:

http://tracker.example.com?product_number=5230&price=123.52

Идея состоит в том, чтобы выполнять веб-аналитику на стороне сервера: вместо отправки информации отслеживания из JavaScript на сервер, сервер отправляет информацию отслеживания непосредственно на другой сервер.

Требования:

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

Ответ отtracker.example.com не нужно проверять. В качестве примеров приведены возможные ответы отtracker.example.com:

200: Это нормально, но проверять это не нужно.

404: Не повезло, но - опять же - проверять это не нужно.

301: Хотя перенаправление будет уместным, оно задержит обработку страницы PHP, так что не делайте этого.

Короче говоря:Все ответы могут быть отброшены.

Идеи для решений:

В удаленном ответе кто-то предложил вызвать командную строкулокон из PHP в процессе оболочки. Это кажется хорошей идеей, только я не знаю, стоит ли делать много процессов оболочки при большой нагрузке.

я нашелPHP-гапакет для выполнения Google Analytics на стороне сервера из PHP. На странице проекта упоминается:«Может быть настроен на использование [...] неблокирующих запросов». До сих пор я не нашел времени, чтобы исследовать, какой метод использует php-ga для внутреннего использования, но этот метод может быть таким!

В двух словах: Каково лучшее решение для общего отслеживания / анализа на стороне сервера из PHP.

Ответы на вопрос(8)

Ваш ответ на вопрос