I am currently working on improving the extensibility of my website.
One of the things I am working on is automatically generating a list of pages for the navbar, sidebar, index, etc, rather than doing it mostly manually like I do currently.
I plan to use a master JSON file that contains a list of pages, titles, descriptions, URLs, etc, and then parse this file with PHP when the page is loaded in order to display the list of pages. The particular file format and language used is not applicable this question, it's just here for context.
The obvious problem with this is efficiency - every single page load is going to involve reading that JSON file and generating the HTML for the list of pages.
I know that caching is the usual solution to this, so that the page generation script is only run when needed, or the database may cache common queries, however what are the implications of not using any caching solution other than potentially lowered performance, DoS risk, etc?
Is not using a caching solution standard practise and the lowered efficiency is just accepted, or am I missing something when it comes to how pretty much every website in the world displays dynamic content?