Комментарии 20
Офигенная статья, респект автору!
Очень интересно читать, хоть я и не php developer.
Очень интересно читать, хоть я и не php developer.
Это действительно круто. Редко где можно увидеть чтобы новая версия была в 2 раза быстрее старой без каких-либо ограничений.
Спасибо за интересную статью. Кстати, WordPress, например, с PHP 7 в 2 раза быстрее прямо из коробки шурует.
Спасибо, очень классно. Мне, как мейнтейнеру скриптового движка, будет над чем подумать.
Мало, что понял, так как все эти оптимизации далеки от меня, но читать было бы интересно.
Если бы php причесали бы, улучшили стандартную библиотеку (убрали текущий цирк) и поубивали старый синтаксис, то была бы уже радость от использования языка, но такой поворот наверно превратил бы php в python 3.
Если бы php причесали бы, улучшили стандартную библиотеку (убрали текущий цирк) и поубивали старый синтаксис, то была бы уже радость от использования языка, но такой поворот наверно превратил бы php в python 3.
Скажите — а при работе php (в качестве модуля apache или php-fpm+nginx) парсинг php-файла происходит при каждом запросе клиента или есть какое-никакое кеширование байткода?
Opcache есть, конечно.
Он (Opcache) встроен в стандартную поставку? А если я поменял файл и нажал обновил страничку — ка PHP об этом догадывается? Он проверяет дату изменения файла при каждом запросе?
Opcache в стандартной поставке с PHP 5.5, до этого был APC. При большом желании его можно выключить или накриворучить настройками.
Стандартно, да, следит на временем изменения файла, если этот файл закеширован. Из кеша можно выпилиться засчет переполнения максимального отведенного объема памяти или количества файлов.
На проде устанавливают
и при деплое сбрасывают кеш, искренне считая, что тут код не должен меняться и нечего тратить время на проверки всякие.
Стандартно, да, следит на временем изменения файла, если этот файл закеширован. Из кеша можно выпилиться засчет переполнения максимального отведенного объема памяти или количества файлов.
На проде устанавливают
opcache.validate_timestamps=0
и при деплое сбрасывают кеш, искренне считая, что тут код не должен меняться и нечего тратить время на проверки всякие.
Довольно забавно видеть эту эволюцию. Как сначала не типизированность показываться как супер пупер киллер фича во множество языках. а через некоторое время — ой, нам нужны типы для читаемости, ой нам нужны типы для производительности
Такая информация из первых рук бесценна. Дмитрий выступал с похожим докладом в 2017 на кодефесте, была возможность послушать в живую. огонь.
Кому интересны еще подробности, на хабре была статья хардкорная статья про внутрянку массивов в семерке: habr.com/ru/company/mailru/blog/308240
Кому интересны еще подробности, на хабре была статья хардкорная статья про внутрянку массивов в семерке: habr.com/ru/company/mailru/blog/308240
PHP переводится как Personal Home Page
Но ведь… Hypertext Preprocessor…
Было бы интересно почитать об встроенном сервере, который появился в 5.4
Хотелось бы узнать будет ли расти стандартная библиотека SPL, например хотелось бы увидеть там класс для работы с сокетами, по типу SPLFileObject
Какие расширение планируются добавиться в common
Какие расширения будут выпилены, есть куча расширении для xml
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Как мы сделали PHP 7 в два раза быстрее PHP 5. Часть 1: оптимизация структур данных