I am using tilestache to serve mapnik OSM map, I am finding it really slow when mapnik rendering is interrupted (say when user zooms out twice with empty cache). It has to wait for the first zoom requests to all disconnect via a broken pipe error like below:
Exception happened during processing of request from ('127.0.0.1', 37259)Traceback (most recent call last):File "/usr/lib/python2.7/SocketServer.py", line 295, in handle_request_noblockself.process_request(request, client_address)File "/usr/lib/python2.7/SocketServer.py", line 321, in process_requestself.finish_request(request, client_address)File "/usr/lib/python2.7/SocketServer.py", line 334, in finish_requestself.RequestHandlerClass(request, client_address, self)File "/usr/lib/python2.7/SocketServer.py", line 657, in __init_self.finish()File "/usr/lib/python2.7/SocketServer.py", line 716, in finishself.wfile.close()File "/usr/lib/python2.7/socket.py", line 279, in closeself.flush()File "/usr/lib/python2.7/socket.py", line 303, in flushself._sock.sendall(view[write_offset:write_offset+buffer_size])error: [Errno 32] Broken pipeSo the user must wait for the first zoom level of tile requests to error before the next zoom level tiles can start rendering. Is there any way of speeding this up?
Also is it possible to run multiple mapnik rendering threads?
أكثر...
Exception happened during processing of request from ('127.0.0.1', 37259)Traceback (most recent call last):File "/usr/lib/python2.7/SocketServer.py", line 295, in handle_request_noblockself.process_request(request, client_address)File "/usr/lib/python2.7/SocketServer.py", line 321, in process_requestself.finish_request(request, client_address)File "/usr/lib/python2.7/SocketServer.py", line 334, in finish_requestself.RequestHandlerClass(request, client_address, self)File "/usr/lib/python2.7/SocketServer.py", line 657, in __init_self.finish()File "/usr/lib/python2.7/SocketServer.py", line 716, in finishself.wfile.close()File "/usr/lib/python2.7/socket.py", line 279, in closeself.flush()File "/usr/lib/python2.7/socket.py", line 303, in flushself._sock.sendall(view[write_offset:write_offset+buffer_size])error: [Errno 32] Broken pipeSo the user must wait for the first zoom level of tile requests to error before the next zoom level tiles can start rendering. Is there any way of speeding this up?
Also is it possible to run multiple mapnik rendering threads?
أكثر...