[Tilecache] SLD Performance

bradleyspencer brad at cubewerx.com.au
Thu Feb 15 19:59:01 EST 2007


Christopher,

Thanks for your help on this. I have created 2 alias URLs that point to the
same WMS service and have checked that this is the case by doing a
getCapabilities on both.

However, I'm having a problem submitting the array to the OL API interface.

The code I am using is as follows:

var meshBlocksBase =
["http://cubeserv01.terrapages.com/abs/cubeserv.cgi?","http://cubeserv02.ter
rapages.com/abs/cubeserv.cgi?"];

landuse = new OpenLayers.Layer.WMS( "DemoDrape", meshBlocksBase, {sld:
sldUrl, format: 'image/png', version:'1.1.3', transparent: 'true', quality:
'MEDIUM', reaspect: false}, { tileSize: new OpenLayers.Size(512,512) });

OpenLayers seems to object to an array of URLs being submitted this way even
if it was only one in the array. Whereas if I submit each URL separately it
works fine ?

I assume I am using the latest software at
src="http://www.openlayers.org/api/OpenLayers.js"

Is this what you were advising me to do and if so is there something I am
doing wrong?

Cheers,

Brad Spencer
General Manager
CubeWerx Australia Pty Ltd
ABN: 37 115 163 285
Mob: +61 (0)404 841 131
Tel/Fax: +61 (0)2 9481 7024
mailto:brad at cubewerx.com.au
http://www.cubewerx.com.au

-----Original Message-----
From: Christopher Schmidt [mailto:crschmidt at metacarta.com]
Sent: Tuesday, 13 February 2007 10:52 AM
To: bradleyspencer
Cc: tilecache at openlayers.org
Subject: Re: [Tilecache] SLD Performance

On Tue, Feb 13, 2007 at 10:24:58AM +1100, bradleyspencer wrote:
> I have built a demo that uses SLDs to render WMS layers atop of GoogleMaps
> in an OL app.
>
> See http://www.cubewerx.com.au/DemoDrapesOL.html
> <http://www.cubewerx.com.au/DemoDrapesOL.html>
>
> This is as good as I can get it with buffer: 1 and 512 x 512 tile sizes.
>
> However, I would like to improve performance for the initial fetching of
the
> remote tiles if possible. I understand that this could quite possibly be
> server-side issues associated with rendering on the fly and maybe this is
as
> good as I can expect. But I wondered what could be done at the TileCache
> population level within OL?
>
> Does anyone know of any way to improve the fetch times?
> Is OL serialising the WMS tile requests?
> If so is it possible to configure OL to launch off all the WMS tile
requests
> in parallel to overlap the seeks times?

Browsers will only request 2 (or sometimes a small number more) tiles
from a single host at a single time. The answer to this is to use
multiple hosts. With the most recent version of OpenLayers, you can do
this by setting your WMS URL to instead be a set of multiple URLs, a la:

[http://tile1.cubeserv.org, http://tile2.cubeserv.org]

You can see this with Google, loading tiles from mt1.google.com,
mt2.google.com, mt3.google.com, etc.

If you have multiple layers you want to load simultaneously, you should,
or at least can, set up different DNS aliases for each set of layers.

These can all point to the server: the limitation is on hostname, not
IP.

Regards,
--
Christopher Schmidt
MetaCarta




More information about the Tilecache mailing list