The integrated XHGui feature means that you can use DDEV XHGui on and start profiling (collecting data about performance) immediately, without any other steps. After you turn it on, every web request is captured, and then you can use ddev xhgui launch to open the XHGui UI.
Because the XHGui mode for XHProf won’t be the default until the next major version of DDEV, you need to make the one-time global switch to using XHGui mode with
ddev config global --xhprof-mode=xhgui
What is DDEV?
DDEV is the standard local development tool used in TYPO3 projects. It has had widespread support and involvement from the TYPO3 community for years. It’s a Docker-based way to run projects on a local machine using any operating system and with many, many Docker providers.
What is XHProf?
XHProf is a long-established way to study performance problems and bottlenecks in PHP projects. It’s been around for decades, but has been a bit tweaky to use. DDEV has had direct support for it for years, but even in DDEV it was sometimes a bit tweaky. Reports were lost between restarts, and sometimes special PHP configuration had to be added.
What is XHGui?
XHGui is an excellent visual front-end for XHProf that makes it super easy to study particular memory, CPU, and I/O usage and problems in a PHP project.
Thanks!
Special thanks go to @tyler36, who incubated XHGui support via a DDEV add-on for years, and to Elan Ruusamäe, the maintainer of XHGui and related PHP libraries, who has kept this project going for more than a decade. Open source for the win!
And thanks to the TYPO3 Community, whose funding of this Community Budget Idea benefits the entire DDEV Community.