I wrote on Nolt about that, but I’m afraid I’ll need a quicker solution.
We’re refactoring our website to use blocks and have something like a site builder. Recently, we noticed that the panel got slower. After digging in, I saw that the issue was our heavy use of blocks. Our refactor is not even half-way done, so we have a lot more blocks to add, which will only make things worse.
Does anyone have an idea how to proceed? Some workaround, maybe?
kirby does a lot of parsing, extracting, fixing on the yaml files to create the actual block object. maybe the core devs could add a cache to serialize and save/read that result till blueprint is modified instead of doing it all over again from the yaml file.
not sure how much one can improve validation but even here it will help if the blocks are a bit more ready (serialized cache) than just yaml.
i continued thinking about that blueprint cache and an idea came to mind…
it is possible to write all blueprint files in yaml and php. yaml will be loaded dynamically but if you use a php file it will be included in the „app“. so you get the full performance boost of like apcu cache etc.
it does not solve parsing the blueprint into field objects etc but i guess its worth a try.
it does nothing to reduce the load when parsing and rendering caused by having lots of blocks but they might load from harddisk faster.
@hdodov did you or anyone else find a solution to this? At work we’re running a large kirby site with a high number of blocks in different layout configurations. Our server takes 10s to even send the initial response to the panel when trying to access a page.