mapserver cluster?

Stephen Woodbridge woodbri at SWOODBRIDGE.COM
Fri Jan 14 16:32:11 EST 2005


Mike Jackson wrote:
> Stephen Woodbridge wrote:
>
>>
>> I don't think mapserver contains MPI interfaces.
>>
>> But I have worked with mapserver clustered at a couple of different
>> sites. Typical all request come into a load balancer that then farms
>> the request to one of the servers in the cluster for processing. This
>> can be done by sending a redirect to the browser or by setting up a
>> proxy that forwards the requests to the appropriate server transparent
>> to the client.
>
>
> There is a big difference between a farm of servers sitting behind a
> load balancer, and a cluster. I think that people are starting to use
> the term "cluster" when they really mean "server farm". There is no
> logical interconnection between servers in a farm.

OK, but there is full redundancy and fail over in the load balanced farm.
We also have separate clusters/farms for applications, maps, geocoding,
routing, and databases with lots of interconnections.

> Rendering vector maps with vmap0 and vmap1 data is very processor
> intensive. I am thinking that it could be greatly speeded up by using
> either multi-processor machines, or a beowulf style cluster. A single P4
> processor just does not crunch numbers fast enough for highly detailed
> vector maps. I wonder about the performance on something like an Opteron
> 64-bit processor compared to a P4.

I think one can argue this point if you are talking about mapserver
anyway. I have VMAP0, Tiger, Navteq for North America and Europe all
running off the same server farm and we get typical 2 sec response
times. Most mapserver configurations that are slow, tend to be that way
because the mapfile and the data is not organized in an efficient
manner. I would have to say the my VMAP0 is the slowest, but that is
because I haven't had time to spend on tuning the mapfile and the data.

I have VMAP0 and Tiger running on my ($1500) P4 server at home sitting
on a DSL line and it is a LOT slower than the systems at work in the
production environment.

http://imaptools.com/tiger/
http://imaptools.com/vmap0/

but they have reasonable performance.

> I haven't coded anything with MPI (yet), so I have some learning curve
> ahead just to learn how to use that.
>
> I like the idea of having the webserver, database, and number-crunching
> done on seperate machines, so I will start to look into this further.

Yes this would be an interesting development project if that is what you
are looking for and mapserver probably could be made to have multiple
process threads render sub-tiles of the map image then have the parent
process stitch them together. Of course there are a lot of boundary
issues you would have to deal with like label crossing tiles for one.

But if you just want you maps to go fast, that can be done with the
existing code if you invest your time in figuring out how to organize
stuff to make it go faster. For that matter, if you map is slow, why is
it slow. What layer(s) are dragging down performance? How could you
change it to make it go faster? Like thin the detail, tile the data,
index the data, etc.

YMMV,
   -Steve Woodbridge
    http://imaptools.com/



More information about the mapserver-users mailing list