I used this guide “https://switch2osm.org/serving-tiles/building-a-tile-server-from-packages/” to build my own tile server. It worked pretty fine besides one issue, the rendering process “renderd” is kinda slow.
To my spec,
RAM 16GB DDR3
SSD 512GB Samsung pro
I used the guide from “http://www.geofabrik.de/media/2012-09-08-osm2pgsql-performance.pdf” to optimize my postgresql.conf and set in “renderd.conf”: num_threads=8.
The thing is, when I go through my slippy map or try to download tiles with JTileDownloader, the rendering of tiles (that are not prerenderd yet) takes pretty long, but my CPU usage stays always under 20%(the process “renderd” never goes over 15% CPU load). But when I tell the server to manually pre render tiles lets say with the command “render_list -a -n 8 -z 0 -Z 10” (which means: pre render all tiles from zoom level 0 - 10 with 8 threats) my CPU is used to 100% (the process “renderd” now also jumps occasionally up to 100% CPU load).
I also have a second tile server, with similar specs, That server uses also the same carto, render software, database. This server I set up a long time ago, I don’t really remember how I have done it. But this server uses always 100% of his CPU to render new tiles. I compared pretty much every config file between the two tile servers (renderd.conf, postgresql.conf, mod_tile.conf, tileserver_site.conf) but could not find the flaw that cripples my new tile server.
Hope someone has a clue what is going on with my tile server and why he refuses to use his full potential to render tiles.