I'm setting up an OpenStreetMap server with mod_tile, renderd and mapnik. My problem its low performance. The machine is set up with 8 cores and 16GB RAM.
I have 2 use cases:
render_list -af -n 8 <coordinates>- renders like a wonder, all 8 cores working fully, getting the tiles is a snaprenderd -f -c <path to conf>and then requesting tiles via slippymap.html equivalent in browser, then served by mod_tiles - it renders with average speed on levels 15-17 but it's getting worse on lower levels and on 10th level it's really very slow and there are white holes where 404 was given instead of tile. What's strange: out of 8 cores only 1-3 are working and mostly not at 100%. Memory usage isn't a problem also, only <0.5GB out of 16GB are used.
As render_list is working quite good, I assume that mapnik, renderd and postgres' database are working OK, but mod_tiles lags. Here is /etc/apache2/mods_enabled/tile.conf:
ModTileTileDir /var/lib/mod_tile
LoadTileConfigFile /usr/local/etc/renderd.conf
ModTileRenderdSocketName /var/run/renderd/renderd.sock
ModTileEnableStats Off
ModTileBulkMode Off
ModTileRequestTimeout 0
ModTileMissingRequestTimeout 30
ModTileVeryOldThreshold 31536000000000
ModTileCacheDurationMax 604800
ModTileCacheDurationDirty 900
ModTileCacheDurationMinimum 10800
ModTileCacheDurationMediumZoom 13 86400
ModTileCacheDurationLowZoom 9 518400
ModTileCacheLastModifiedFactor 0.20
ModTileEnableTileThrottling Off
LogLevel debug
renderd outputs standard PNGs in 8x8 metatiles. If there is something else I should post, please let me know.
Is there anything I can do to get similar performance of mod_tile's serving as I have with render_list?