[mapserver-users] mapserver architecture for multi-websites on several machines

Daniel Morissette morissette at dmsolutions.ca
Tue Jul 17 10:04:36 EDT 2001


John, Claude,

I agree with John's opinion that using the OGC WMS (Web Map Server)
support in MapServer should allow you to do everything you need, and
since it builds on a commonly adopted standard it will allow you to
eventually expand your pool of servers to servers from other vendors if
needed.

As John wrote, the WMS spec includes 3 types of request: 

- getCapabilities returns an XML document with list of layers and
  features supported by the server.
- getMap returns an image of the map with specified layers and BBOX
- getFeatureInfo is used for querying the map obtained from a previous
  getMap request.

One more thing you'll need is a server application that can integrate
layers from several remote servers and return a single map image to the
client browser... this is referred to by the OGC WMT (Web Mapping
Testbed) group as a "cascading server" (well, technically a cascading
WMS serves maps to other WMS servers and not directly to browsers... so
maybe we should just say WMS client and not cascading server).

Anyway, this is not available in MapServer yet but we will be adding
this to Mapserver in the next few months.

Note that some people have implemented JavaScript WMS clients that
combine the WMS maps directly in the web browser, and that might do the
trick for you... perhaps those who have developed this kind of WMS
clients can comment more.

I hope that helps,

Daniel

"Hockaday, John" wrote:
> 
> Hi Claudia,
> 
> I was hoping that someone with more experience with this type of subject
> would answer your question but it seems that they haven't so I will give you
> the little knowledge that I have on the subject.  Hopefully, lots of people
> will get annoyed with the errors in this e-mail that I am proposing and they
> will correct me for your benefit.  I for one am very interested in the
> outcomes of your project as I will have to look into something similar soon.
> 
> The Open GIS came up with a standard for accessing data across the web.  (I
> think that the OpenIGS is called something different now but I'm not sure.)
> One of the commands is something like getimage().  I believe that mapserver
> version 3.5 has the ability to handle Open GIS capabilities.  I seem to
> remember earlier versions having the getimage() command but I'm not sure
> about that either.
> 
> You could use the getimage() command to each of your mapservers and they
> should return an image.  You could then build these images on top of each
> other, if they are transparent, to make a final map.  GD can do this if
> mapserver doesn't already have a command to do it.  You may have to make
> more that one call to each map server as the order of the layers may be
> important to your final map.
> 
> I think that there is a similar OpenGIS command to get information about a
> layer from a remote map server.  It may be something like getinfo().  This
> is probably a more simpler command as it may only need information from one
> mapserver.
> 
> I would *strongly* recommend that you use the OpenGIS standard as a lot of
> work has gone into this standard and you will greatly benefit from their
> detailed efforts.  I worked on a system of connecting to many map producing
> servers a long time ago and it was full of problems therefore, we stopped
> doing it.  Since then, the OpenGIS has addressed those problems in their
> work.
> 
> Good luck and please keep this list aware of what you are doing.  I want to
> build on your work if you don't mind me "borrowing" your intellectual
> property and code.   ;--)
> 
> John
> 
> > -----Original Message-----
> > From: Claude Philipona [SMTP:claude.philipona at camptocamp.com]
> > Sent: Friday, July 13, 2001 8:38 PM
> > To:   mapserver-users at lists.gis.umn.edu
> > Subject:      [mapserver-users] mapserver architecture for multi-websites
> > on several machines
> >
> > We are starting a project using Mapserver (PHP/MapScript) for building a
> > cartographic server which could be used by different client web-sites on
> > different machines. The server will propose a large set of raster map from
> > 1:25'000 to 1:1'000'000. The client web-sites will be able to use the
> > central
> > mapserver to interactivly geocode any kind of information (points, lines,
> > surfaces) using an applet and to visualize and to navigate thru the
> > obtained
> > geocoded objects.
> >
> > Each site using Mapserver is totally independent should be able to
> > integrate the
> > map directly (no frames).In this configuration we don't have a web borwser
> > making
> > direct request to MapServer, but rather the web server machines would have
> > to
> > make the cartogrphic request to the mapserver machine. This is a kind of
> > wms.
> >
> > My question: What is the best solution to implement this kind of
> > architecture?
> > Has anybody already done such thing?
> >
> > My ideas were to use WDDX (Web Distributed Data Exchange,
> > http://www.openwddx.org/faq/) to exchange the required parameters between
> > the
> > mapserver box (coordinates of the click, shapes ON,...) and the webserver
> > boxes
> > (url of the map image,...). So the Webserver (php enabled) would post a
> > wddx file
> > (containing the serailzed parameter) to the MapServerPHP-MapScript. After
> > deserialization PHP/Mapscript will process the map request and return wddx
> > file
> > (containing the url of the images and other important parameter).
> >
> > Is it the way to go to get good performance? Is there a better way to do
> > it?
> >
> > Other question: I was palnning to start this development using directly
> > Mapserver
> > 3.5, providing that the system will not enter in production before
> > november. Is
> > 3.5 stable enough? Any timesacle for the official release?
> >
> > Claude Philipona

-- 
------------------------------------------------------------
 Daniel Morissette               morissette at dmsolutions.ca
 DM Solutions Group              http://www.dmsolutions.ca/
------------------------------------------------------------
  Don't put for tomorrow what you can do today, because if 
      you enjoy it today you can do it again tomorrow.




More information about the mapserver-users mailing list