Почему Xdebug 3.1 не сообщает время функции ZipArchive?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Почему Xdebug 3.1 не сообщает время функции ZipArchive?

Сообщение Anonymous »


В устаревшем приложении я профилирую сценарий, который архивирует файлы в ZIP-архив. На данный момент добавление 55 МБ (~ 450 файлов) в zip-архив на локально работающей виртуальной машине занимает около 40 секунд. Я надеялся выяснить, где я мог бы улучшить это с помощью профилирования. Приложение работает на PHP 7.3 (к сожалению, оно не работает на 8.x), а Xdebug 3.1.6 — последняя версия, поддерживающая это; приложение включает в себя версию pclzip для создания архивов, которую я решил сравнить с собственной обработкой zip-архивов PHP, чтобы увидеть, есть ли существенная разница.

Xdebug выдает разбивку затраченного времени и график вызовов, как и ожидалось для pclzip:


Изображение



Изображение


Однако Xdebug не показывает такую ​​же разбивку по времени для встроенной обработки zip-файлов (ZipArchive):


Изображение



Изображение


Интересно, что создаваемые файлы кэшгринда также существенно различаются по размеру:

$ ls -lh кэшгринд.out.??.gz -rw-r--r-- 1 бертиб бертиб 32М 5 янв. 12:06 кэшгринд.аут.23.гз -rw-r--r-- 1 бертиб бертиб 231K 5 января 12:09 кэшгринд.аут.26.гз (cachegrind.out.23.gz — профиль pclzip, cachegrind.out.26.gz — ZipArchive) В чем причина такой разницы? Я ожидаю увидеть схожие временные разбивки и графики вызовов для обоих подходов. Я новичок в Xdebug, и поиск не пролил никакого света на это несоответствие.
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»