Что быстрее для разрешения IP?
Кто-нибудь проводил какое-либо тестирование, чтобы увидеть, что быстрее / эффективнее / лучше для разрешения IP-адреса в скрипте PHP?
это
exec('host '. $_SERVER['REMOTE_ADDR']);
или это
gethostbyaddr($_SERVER['REMOTE_ADDR']);
2 ответа
Если есть встроенная функция, вы должны использовать ее вместо внешней команды.
Использование внешней команды делает вашу программу зависимой от ОС.
Вы должны попробовать это сами, но я думаю, что стоимость запуска нового процесса будет больше, чем просто вызов gethostbyaddr
функция. Переход по внешнему исполняемому маршруту также делает вас зависимым от многих других вещей, таких как ОС, правильная настройка вашего пути, возможность того, что вывод host
может измениться и тд.
Оптимизация мантра № 1 это мера, не угадай! Номер 2 оптимизируется только в том случае, если вы установили, что это узкое место, поэтому убедитесь, что оно действительно вызывает проблемы, прежде чем тратить время на попытки исправить что-то несущественное.