It has been a long time that Kuangjia is poor at handling large website. (#710, #1124, #283, #1187, #550, #1769, etc.) We tried hard to solve this problem and there’re several improvements in Kuangjia 3.2.
Rendered contents are cached in the warehouse. This saves a lot of time and made hot processing (2nd-time processing) 1.7x faster.
highlight.js is slow. Especially when it try to detect the language. Lazy load language files make processing faster and don’t have to load bunch of unused language files. However there’re some limitations:
- Auto detect must be disabled.
- You have to specify language in code block.
You can set auto detect disabled in
Theme templates are precompiled if possible. It makes generation speed 2x faster.
The following renderers have already supported this feature.
And it’s easy to implement precompilation for renderers. Just add a
compile function to the renderer. Take EJS renderer for example:
You can include/exclude specified source files in