Bug #91257
openSerious performance issues due to detached DOM nodes
0%
Description
The TYPO3 backend suffers from heavy performance issues. Using the backend for ~1 hour made it really unusable, as the browser's garbage collection kicks in after every second click and occupies more and more time and blocks the browser from doing its work.
After creating a few heap snapshots I found out we create a lot of detached DOM nodes.
For explanation: a detached DOM node is a node referenced in JavaScript, but not rendered the actual DOM. Such references don't get removed and occupy memory over time.
In DebugConsole, for example, the nodes are created but not rendered initially: https://github.com/TYPO3/TYPO3.CMS/blob/master/Build/Sources/TypeScript/backend/Resources/Public/TypeScript/DebugConsole.ts#L115
I've created several screenshots of the profiles, the only thing I did is opening the EditDocumentController for different content elements multiple times and closing them again and browsing in the page tree.
Since the snapshot files are too large to be attached in Forge, I've uploaded them to Google Drive: https://drive.google.com/open?id=1-XiCT13VlWbNBfIY-QrgAbTpta54MpEA
Files
Updated by Oliver Hader over 4 years ago
- File closure_size.png closure_size.png added
- File closure_details.png closure_details.png added
In my environment memory consumption on detached nodes is not that high... but closure and object stack is (see screenshots) e.g. referring to ShortcutMenu or t3-topbar-update..