Tilemap is the go to method.
It's one large texture versus 15000 small textures.
It puts the burden more on the gpu, which is what it excels at.
The only other optimisation worth mentioning is "render cells" located under the layer properties.
It tells the system not to worry about rendering objects that can't be seen.
It will lessen the load, but 15000 is still a bit much for the cpu to keep track of, even if they are static.