[OSGeo-Discuss] The state of WMS tile caching

Gilles Bassière gilles.bassiere at makina-corpus.com
Wed Nov 26 03:46:48 PST 2008

I was recently confronted to the same problem. I needed a cached WMS, 
although on some occasion I would need to perform untiled map requests. 
Of course, it would have been much easier to send tiled and untiled 
request to a single front server.

My idea was to hack TileCache. Indeed, TileCache already has WMS request 
support et grid calculation and cache and so on. When the requested 
extent/size does not match the tile grid, TileCache returns an error. I 
guess it would be possible to catch this error. Then, instead of 
returning the error to the client, it should be possible to forward the 
request to the rendering back-end and return the resulting image to the 
client (without storing it in the cache). I'm not sure whether this 
could be possible with all back-end. I did not think of performance 
either. But I think that could be a solution for someone needing 
seamless map caching.

For some reasons we did not implement this idea. The main problem was 
the lack of support for GetFeatureInfo in TileCache. I'm now thinking of 
some kind of integration of TileCache within the OGCserver (part of the 
Mapnik project). It is still a rough idea and, unfortunately, I don't 
have any time to work on it. Moreover, I doubt if it's reasonable to mix 
WMS with TMS-based cache. Of course, TMS-based cache is incredibly 
efficient but it also impose the grid parameters to the client. In my 
opinion it is an important restriction that reduce interoperability. 
With such restrictions, it may not be possible to feed OpenLayers with 
WMS-C stream coming from different servers.

I'm a bit surprised because standard-compliance is an important part of 
this thread but the OGC discussion paper about tiled WMS was not 
mentioned (see http://www.opengeospatial.org/standards/wms). The paper 
is more than 1-year old now, does anybody know if there is ongoing work 
or if it could become an implement specification soon? An important 
point discussed in the paper is about describing the tile grid so that 
an arbitrary client can build a valid request.


Jody Garnett wrote:
>     Can WMS tiles be cached by the server for any WMS client and still
>     serve WMS according to the standard?
> It should be possible; indeed that is my reading of how it should 
> work. The difference is in the all important tiled=true part of the 
> GetMap request; which would control if it is dispatched
> to the tile cache or the normal WMS rendering subsystem.
>     I know that a you can constrain WMS requests to a predefined grid
>     if you control the client's request, but what if you don't control
>     the client's request, can caching still be done?
>  Sasha at Refractions did exactly this; set up a WMS Proxy that made 
> use of a tilecache behind the scenes - it was pretty cool but I do not 
> think he took the time to open source it yet.
>     [to provide some context for the curious ones, it's for a public
>     prototype for Canadian weather data dissemination and we're pretty
>     excited about it - however, because weatheroffice.ec.gc.ca
>     <http://weatheroffice.ec.gc.ca> is the most visited Canadian
>     website (that's what they tell us, but I guess google.com/.ca
>     <http://google.com/.ca> probably comes first), we need caching
>     capabilities]
> I actually worked on that website back in the bad old days (a co-op 
> job of all things). It used to be Java and IIS pulling data from an 
> OS/2 system via a serial link. Good times.
> If you contact me offline I can put you in contact with Sasha; and of 
> course would love to do any work in this direction myself ;-)
> Jody
> ------------------------------------------------------------------------
> _______________________________________________
> Discuss mailing list
> Discuss at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/discuss

Gilles Bassiere
30 rue des Jeuneurs
FR-75002 PARIS
+33 (0) 1 44 82 00 80

-------------- next part --------------
A non-text attachment was scrubbed...
Name: gilles_bassiere.vcf
Type: text/x-vcard
Size: 368 bytes
Desc: not available
URL: <http://lists.osgeo.org/pipermail/discuss/attachments/20081126/e9ee35c4/attachment.vcf>

More information about the Discuss mailing list