I have QGIS Map Server, when I load WMS layer it takes 20 seconds to prepare it and only 30ms to download. How can I speed it up?
Can I do this without changing QGIS projects? How to do that?
You're going to need to profile your data sources and workspace as a whole.
With QGIS Server, you usually prepare the workspace in QGIS. How long does a similar map frame take to render in the Desktop application? Try with different layers and styling options in QGIS, and then publish to your server.
In my opinion you must create pyramid layers of you rasters using Gdaladdo command.
Using pyramid layers externally or internally will help you to speedup your WMS performance.
You can visit gdaladdo for help.