• Как протестировать производительность функций начинающему php-разработчику?

    AgentSmith72
    @AgentSmith72 Автор вопроса
    Роман Юрьевич Ипатьев, Директива в файле php.ini

    memory_limit = 128M // Задаёт максимальный объем памяти в байтах, который разрешается использовать скрипту.

    Нашёл функцию getrusage(), которая делает всё что требуется.

    $data = getrusage();
    echo $data["ru_oublock"]; // количество операций вывода блока
    echo $data["ru_inblock"]; // количество операций приёма блока
    echo $data["ru_msgsnd"]; // количество отправленных сообщений IPC
    echo $data["ru_msgrcv"]; // количество принятых сообщений IPC
    echo $data["ru_maxrss"]; // наибольший размер установленной резидентной памяти
    echo $data["ru_ixrss"]; // суммарное значение размера разделяемой памяти
    echo $data["ru_idrss"]; // суммарное значение размера неразделяемых данных
    echo $data["ru_minflt"]; // кол. исправленных страниц (лёгкая ошибка страницы)
    echo $data["ru_majflt"]; // кол.ошибочных страниц (тяжёлая ошибка страницы)
    echo $data["ru_nsignals"]; // количество полученных сигналов
    echo $data["ru_nvcsw"]; // количество согласованных переключений контекста
    echo $data["ru_nivcsw"]; // количество несогласованных переключений контекста
    echo $data["ru_nswap"]; // количество свопов
    echo $data["ru_utime.tv_usec"]; // время на задачи пользователя (user time) (микросекунды)
    echo $data["ru_utime.tv_sec"]; // время на задачи пользователя (user time) (секунды)
    echo $data["ru_stime.tv_usec"]; // время на системные задачи (system time) (микросекунды)
  • Как протестировать производительность функций начинающему php-разработчику?

    AgentSmith72
    @AgentSmith72 Автор вопроса
    Роман Юрьевич Ипатьев, опытный разработчик мне и сказал, что так как программисты народ ленивый, то ему проще обращаться к памяти, легко узнавая, что там находится, чем прослеживать роутинг переменных с начала их пути.

    По мне так это уже не KISS, а лёгкая эротика.
  • Как протестировать производительность функций начинающему php-разработчику?

    AgentSmith72
    @AgentSmith72 Автор вопроса
    Роман Юрьевич Ипатьев, Мой вопрос подразумевает: как тестировать функциональную реализацию, чтобы в зависимости от затрат системных ресурсов использовать либо вызов чистильщика значений переменных-аргументов либо обращаться к памяти.

    Так как я планирую выстраивать архитектуру отталкиваясь не от удобочитаемости кода, а от эффективности использования системных ресурсов.
  • Как протестировать производительность функций начинающему php-разработчику?

    AgentSmith72
    @AgentSmith72 Автор вопроса
    Пример простой, но речь идёт про разницу между аргументами и обращением к свойствам:

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