Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have an OpenLayers-OGCServer-Mapnik setup through a WMS layer. I noticed when i use the openlayers UI in a quick manner (fast zoom with mouse scroll, a couple of consecutive pans with mouse) the response from WMS slows down, because its obviously processing all the tiles between the previous "static" state and the last one. Is there a switch in openlayers or perhaps mapnik ogcserver to optimize this behavior by either postponing requests until the user pauses for a moment on the same location (clientside) or canceling previous requests from the same IP on the OGCserver (serverside)

share|improve this question

I guess there is not a built in stuff into OpenLayers to to that. But it has the tools!!!

The OpenLayers.Layerclass has events like "loadstart" where you can capture requests been sent. Also the OpenLayers.Map has the event "moveend" where you hook listeners to interact with user moves, drag and pan. You can write custom code to help your application.

Also you could take a look into the OpenLayers.Layer.WMS and parent classes to understand how is doing the requrests.

The client should cancel previous requests maded to server. The server should limit the number of concurrent requests coming from a client.

Because of the large quantities of tiles people usually use those tile cache to store pre processed image blocks for the client.

share|improve this answer
I noticed those 2 events, i ll look further into that. In my case i use WMS layer for a dataset that changes rapidly and is not suitable to be prerendered. – U2ros Dec 22 '12 at 12:58

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.