Problem/Motivation
I have a smaller website with a blog, which is the only subpage slower than the rest. I investigated the issue using the webprofiler and noticed that there are about 700 - 1000 requests to SQL database on each load, from which pretty much all of them are SELECTs to cache_ tables like cache_default, cache_config, cache_entity, cache_render etc.
This subpage contains 6 blocks with various blog posts (4 blog posts each) containing some images, author, cropped body and side menu with taxonomy of blog posts.
While the individual queries are fast (between 0.3ms to 0.7ms) all together in this number it is more than 0.5 seconds on queries, not accounting a render time after the queries are done. There are no slow queries on that subpage at all according to webprofiler.
Is there any way to speed up / decrease the number of queries needed to render the page? I feel like this is way too many queries for a fairly simple website with a few blocks.
Steps to reproduce
Probably just create a fairly complex website with multiple views / blocks on one subpage.
Questions
I wonder if implementing any kind of caching mechanism other than memcached would help, like Redis or something like that. But also this website runs on shared hosting so it will probably not be available.
How to debug and solve problems like that? Is there any documentation regarding such problems? I would like to learn the tricks to speed up Drupal websites, I am fairly new to Drupal 8 / 9, used to work with Drupal 7 and never met problems like those. Is Drupal 9 so much more complicated?