how to speed up MapServer performance?

Stuart Eve stuarteve at LPARCHAEOLOGY.COM
Tue May 16 09:15:45 PDT 2006


We've done some benchmarking for our own system heres some conclusions 
that you could think about (sorry if these are repeats I just cut and 
paste straight from our dev wiki):

*Conclusions*

    * The geographic size of the area being displayed makes a difference
      to processing performance - i.e. if you trying to display the
      whole of europe in one hit (with detailed vectors)

    * Rasters (despite having large file sizes and being of high
      resolution) seem to make very little difference to performance. It
      is good practice to create overviews, tile and pre-project into
      the desired coordinate system. 

    * Pre-projecting the layers into the desired coordinate system seems
      to make a difference (as the worst performing layers were all in
      UTMs being reprojected in 3034) - however this needs to be tested
      further as a number of the other layers were in LatLongs and they
      seemed to make no impact on performance. *UPDATE: * This has now
      been tested with the comune being pre-projected into 3034 - and
      being displayed at all scales. Previosuly this gave a hit of
      *+23s* when it was in 32633 - when pre-projected into 3034 it only
      gave a hit of *0.5s*! Pre-projection is clearly an absolute priority.

    * Only turn layers on if they are absolutely needed (make sure that
      min/maxscales are used properly).

    * the complexity of the vector layers appears to make a difference,
      so in some cases, it may be worth making simplified shapefiles for
      use when zoomed out - and only use the most detailed ones when
      zoomed in enough to be able to see the complicated bits. Also you
      can create *.qix files.

Hope it helps

Stuart



Doyon, Jean-Francois wrote:
> Well, I don't have any for Mapserver itself, but I'm sure you'll find 
> plenty for Apache, and it's processes vs. thread issues.  Apache was 
> never an option for windows because of its forking model ... creating 
> processes dynamically on windows was too slow and expensive.  When 
> Apache went to MPM's and supported a threaded model, things got much 
> better.
>  
> Everything in windows is designed to be low on process creation, and 
> thread heavy ... Including windows itself.  This is not a putdown, 
> it's just a reality.  Linux has cheap processes, Windows has cheap 
> threads.
>  
> As such, CGI is more expensive on Windows.  But of course, there 
> admitedly might be other speed gains elsewhere along the line (IIS 
> being in kernel space, and threaded) to compensate.  I suppose you 
> could compare with Apache on windows?
>  
> Doesn't change the fact that what I said is true :P But yeah, I'm 
> maybe being a little too purist here ;)
>  
> J.F.
>  
> ------------------------------------------------------------------------
> *From:* Ed McNierney [mailto:ed at topozone.com]
> *Sent:* May 16, 2006 10:03 AM
> *To:* Doyon, Jean-Francois; MAPSERVER-USERS at LISTS.UMN.EDU
> *Subject:* RE: [UMN_MAPSERVER-USERS] how to speed up MapServer 
> performance?
>
> J.F. -
>  
> I was with you all the way until you mentioned operating systems!  
> There's no reason to think that Zhonghai's operating system is at all 
> related to his problem, and it's dangerous to propagate operating 
> system myths.  I run lots of MapServer machines on Windows and Linux 
> (mostly Linux)  and I cannot find any evidence (after 5 years or so) 
> that there's any difference worth thinking about on identical hardware.
>  
> If you can show me a MapServer test with identical configurations on 
> identical hardware showing statistically significant differences in 
> performance when running Window vs. Linux, I'd love to see the details.
>  
>     - Ed
>
> Ed McNierney
> President and Chief Mapmaker
> TopoZone.com / Maps a la carte, Inc.
> 73 Princeton Street, Suite 305
> North Chelmsford, MA  01863
> Phone: +1 (978) 251-4242
> Fax: +1 (978) 251-1396
> ed at topozone.com
>
>
> ------------------------------------------------------------------------
> *From:* UMN MapServer Users List 
> [mailto:MAPSERVER-USERS at LISTS.UMN.EDU] *On Behalf Of *Doyon, Jean-Francois
> *Sent:* Tuesday, May 16, 2006 9:53 AM
> *To:* MAPSERVER-USERS at LISTS.UMN.EDU
> *Subject:* Re: [UMN_MAPSERVER-USERS] how to speed up MapServer 
> performance?
>
> Zhonghai,
>  
> You have the one big data set in there, which is the roads.  If you're 
> trying to display ALL the data in the one map, all at once, then 3 
> secs isn't all that bad, considering you have 60 megs of data to work 
> through.
>  
> You may want to consider generalizing the data for viewing at 
> different scales.
>  
> The fileformat itself will create a tiny bit of an impact, since it 
> all goes through OGR, for "raw" speed, use shapefiles , indexed with 
> .qix ...
>  
> The MapServer CGI is about the fastest mapping engine you'll find out 
> there, open source or commercial!
>  
> Also, what's the hardware like? Notably disk IO?
>  
> Also, I'm sorry, but I must ask :) Does it have to be windows?  On 
> Windows, processes are quite expensive, which includes CGI ... this 
> isn't the case on Linux, where processes are cheap, and threads are 
> expensive.  Also, Linux tends to cache things better in my experience.
>  
> If you're using WMS, I think there's a FastCGI interface you could try 
> using, though I'm not sure how mature it is.
>  
> J.F.
> ------------------------------------------------------------------------
> *From:* UMN MapServer Users List 
> [mailto:MAPSERVER-USERS at lists.umn.edu] *On Behalf Of *Zhonghai Wang
> *Sent:* May 16, 2006 4:09 AM
> *To:* MAPSERVER-USERS at lists.umn.edu
> *Subject:* Re: [UMN_MAPSERVER-USERS] how to speed up MapServer 
> performance?
>
> Hi my friends,
>  
> I am really very thankful for all your information, I am a newbie in 
> MapServer.
>  
> here is the data amount that I am using for the application:
> (all the source data is MapInfo format, and what I calculated is the 
> ".MAP" file)
>  
> 1. boundaries -- 388 KB
> 2. forests -- 9163 KB
> 3. lakes -- 26 KB
> 4. city parks -- 25 KB
> 5. settlement -- 2279 KB
> 6. rivers -- 1653 KB
> 7. road networks -- 56370 KB
> 8. railway -- 1343 KB
> 9. train station -- 27 KB
> 10 bus station -- 2 KB
> 11. tourist centers -- 9 KB
> 12. theaters -- 6 KB
> 13. shopping center -- 7 KB
> 14. city location -- 9 KB
>  
> *****
> and here is how I am symbolizing the layers, mapfile for all these layers:
>  
> ***
> LAYER
>     NAME "Country"
>     STATUS DEFAULT
>     TYPE POLYGON
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_COUNTRY.TAB"
>     TRANSPARENCY 40
>     DEBUG ON
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       #NAME "Boundaries"
>       STYLE
>         SYMBOL 0
>         COLOR 155 155 155
>         OUTLINECOLOR 155 155 155
>         BACKGROUNDCOLOR 255 255 255
>       END
>     END
>   END
>   LAYER
>     NAME "lakes"
>     STATUS DEFAULT
>     TYPE POLYGON
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_LAKE.TAB"
>     DEBUG ON
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Lake"
>       STYLE
>         COLOR 102 153 255
>       END
>     END
>   END
>   LAYER
>     NAME "woodland"
>     STATUS DEFAULT
>     TYPE POLYGON
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_WOODLAND_G.TAB"
>     DEBUG ON
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "woodland"
>       STYLE
>         COLOR 0 185 92
>       END
>     END
>   END
>   LAYER
>     NAME "woodland"
>     STATUS DEFAULT
>     TYPE POLYGON
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_WOODLAND.TAB"
>     MAXSCALE 100000
>     #LABELITEM "Street_Label"
>     #SYMBOLSCALE 50000
>     #LABELMAXSCALE 80000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "woodland"
>       STYLE
>         COLOR 0 185 92
>       END
>     END
>   END
>   LAYER
>     NAME "city parks"
>     STATUS DEFAULT
>     TYPE POLYGON
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_CITY_PARK.TAB"
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Park"
>       STYLE
>         SYMBOL 0
>         COLOR 233 254 205
>       END
>     END
>   END 
>   LAYER
>     NAME "settlement"
>     STATUS DEFAULT
>     TYPE POLYGON
>     #CLASSITEM "Area"
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_BUILT_UP_AREA.TAB"
>     MAXSCALE 800000
>     #LABELITEM "Street_Label"
>     #SYMBOLSCALE 80000
>     #LABELMAXSCALE 120000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "settlement"
>       #EXPRESSION ([Area]>20000)
>       STYLE
>         COLOR 207 207 158
>       END
>     END
>   END
>   LAYER
>     NAME "rivers"
>     STATUS DEFAULT
>     TYPE POLYGON
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_WATERWYS.TAB"
>     MAXSCALE 800000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "river"
>       STYLE
>         COLOR 102 153 255
>       END
>     END
>   END
>   LAYER
>     NAME "street50"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_S50.TAB"
>     MAXSCALE 40000
>     LABELITEM "Street_Label"
>     SYMBOLSCALE 5000
>     LABELMAXSCALE 20000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Street 50"
>       LABEL
>         # must be in your FONTSET
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 8
>         MINSIZE 2
>         MAXSIZE 8
>         ANGLE AUTO
>        POSITION CC
>        OFFSET 0 0
>         COLOR 0 0 255
>         MINFEATURESIZE AUTO
>         BUFFER 0
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 8
>         MINSIZE 1
>         MAXSIZE 8
>         COLOR 255 255 255
>       END
>     END
>   END
>   LAYER
>     NAME "oneway"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_ONEWAY.TAB"
>     MAXSCALE 40000
>     SYMBOLSCALE 5000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Oneway"     
>       STYLE
>         SYMBOL "oneway"
>         SIZE 8
>         MINSIZE 1
>         MAXSIZE 8
>         COLOR 255 51 0
>       END
>     END
>   END
>   LAYER
>     NAME "street40"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_S40.TAB"
>     MAXSCALE 100000
>     LABELITEM "Street_Label"
>     SYMBOLSCALE 15000
>     LABELMAXSCALE 30000
>     LABELCACHE ON
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Street 40"
>       LABEL
>         # must be in the FONTSET
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 9
>         MINSIZE 2
>         MAXSIZE 9
>         ANGLE AUTO
>        POSITION CC
>        OFFSET 0 0
>         COLOR 0 0 255
>         MINFEATURESIZE 20
>         BUFFER 0
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 10
>         MINSIZE 3
>         MAXSIZE 10
>         COLOR 160 160 160
>         ANTIALIAS TRUE
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 8
>         MINSIZE 1
>         MAXSIZE 8
>         COLOR 255 255 255
>         ANTIALIAS TRUE
>       END
>     END
>   END
>   LAYER
>     NAME "street30"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_S30.TAB"
>     MAXSCALE 250000
>     LABELITEM "Street_Label"
>     SYMBOLSCALE 40000
>     LABELMAXSCALE 120000
>     LABELCACHE ON
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Street 30"
>       LABEL
>         # must be in your FONTSET
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 9
>         MINSIZE 2
>         MAXSIZE 9
>         ANGLE AUTO
>        POSITION CC
>        OFFSET 0 0 
>         COLOR 0 0 255
>         MINFEATURESIZE 30
>         #MINDISTANCE 10
>         BUFFER 0
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 10
>         MINSIZE 3
>         MAXSIZE 10
>         COLOR 160 160 160
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 8
>         MINSIZE 1
>         MAXSIZE 8
>         COLOR 255 204 51
>       END
>     END
>   END
>   LAYER
>     NAME "railway"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_RAILRDS.TAB"
>     MAXSCALE 8000
>     SYMBOLSCALE 4000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "railway"
>         SYMBOL 'point'
>         COLOR 0 0 0
>         SIZE 5
>         MINSIZE 1
>         MAXSIZE 5
>         OVERLAYSYMBOL "dashedline"
>         OVERLAYCOLOR 255 255 255
>         OVERLAYSIZE 3
>         OVERLAYMINSIZE 0
>         OVERLAYMAXSIZE 3     
>     END
>   END
>   LAYER
>     NAME "street20"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_S20.TAB"
>     MAXSCALE 900000
>     LABELITEM "Street_Label"
>     SYMBOLSCALE 100000
>     LABELMAXSCALE 430000
>     LABELCACHE ON
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Street 20"
>       LABEL
>         # must be in your FONTSET
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 9
>         MINSIZE 1
>         MAXSIZE 9
>         ANGLE AUTO
>        POSITION CC
>        OFFSET 0 0 
>         COLOR 0 0 255
>         MINFEATURESIZE 50
>         #MINDISTANCE 10
>         BUFFER 0
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 10
>         MINSIZE 3
>         MAXSIZE 10
>         COLOR 160 160 160
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 8
>         MINSIZE 1
>         MAXSIZE 8
>         COLOR 247 193 157
>       END
>     END
>   END
>   LAYER
>     NAME "street10"
>     STATUS DEFAULT
>     TYPE LINE
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_S10_O.TAB"
>     MAXSCALE 1700000
>     LABELITEM "Street_Label"
>     SYMBOLSCALE 400000
>     LABELMAXSCALE 500000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Street 10"
>       LABEL
>         # must be in your FONTSET
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 8
>         MINSIZE 1
>         MAXSIZE 8
>         ANGLE AUTO
>        POSITION CC
>        OFFSET 0 0
>         COLOR 255 0 0
>         BACKGROUNDCOLOR 153 204 153
>         MINFEATURESIZE AUTO
>         MINDISTANCE 200
>         BUFFER 1
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 10
>         MINSIZE 3
>         MAXSIZE 10
>         COLOR 255 0 0
>       END
>       STYLE
>         SYMBOL "point"
>         SIZE 6
>         MINSIZE 1
>         MAXSIZE 6
>         COLOR 255 255 0
>       END
>     END
>   END
>   LAYER
>     NAME "train station"
>     STATUS OFF
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_TRAIN_STATION.TAB"
>     MAXSCALE 10000
>     #LABELITEM "Label"
>     SYMBOLSCALE 1000
>     LABELMAXSCALE 5000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Train station"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 8
>         MINSIZE 2
>         MAXSIZE 8
>         ANGLE AUTO
>        POSITION UC
>        OFFSET 0 0
>       END
>       STYLE
>         SYMBOL "triangle"
>         COLOR 153 0 0
>         SIZE 8
>         MINSIZE 3
>         MAXSIZE 8
>       END
>     END
>   END
>   LAYER
>     NAME "bus station"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_BUS_STATION.TAB"
>     MAXSCALE 10000
>     LABELITEM "Label"
>     SYMBOLSCALE 1000
>     LABELMAXSCALE 5000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "bus station"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 8
>         MINSIZE 2
>         MAXSIZE 8
>         ANGLE AUTO
>        POSITION UC
>        OFFSET 0 0
>       END
>       STYLE
>         SYMBOL "triangle"
>         COLOR 0 153 0
>         SIZE 8
>         MINSIZE 3
>         MAXSIZE 8
>       END
>     END
>   END
>   LAYER
>     NAME "LOCATIONS0"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_AND_LOCATIONS0.TAB"
>     MAXSCALE 1000000
>     LABELITEM "Name"   
>     SYMBOLSCALE 200000
>     LABELMAXSCALE 500000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "LOCATIONS0"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 12
>         MINSIZE 2
>         MAXSIZE 12
>         ANGLE AUTO
>        POSITION AUTO
>        OFFSET 0 0
>        COLOR 0 0 255
>       END
>       STYLE
>         SYMBOL "star"
>         COLOR 255 0 0
>         SIZE 18
>         MINSIZE 8
>         MAXSIZE 18
>       END
>     END
>   END
>   LAYER
>     NAME "LOCATIONS1"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_AND_LOCATIONS1.TAB"
>     MAXSCALE 800000
>     LABELITEM "Name"
>     SYMBOLSCALE 200000
>     LABELMAXSCALE 500000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "LOCATIONS1"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 12
>         MINSIZE 2
>         MAXSIZE 12
>         ANGLE AUTO
>        POSITION AUTO
>        OFFSET 0 0
>        COLOR 0 0 255
>       END
>       STYLE
>         SYMBOL "point"
>         COLOR 153 153 0
>         SIZE 8
>         MINSIZE 3
>         MAXSIZE 8
>       END
>     END
>   END
>   LAYER
>     NAME "LOCATIONS2"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_AND_LOCATIONS2.TAB"
>     MAXSCALE 800000
>     LABELITEM "Name"
>     SYMBOLSCALE 200000
>     LABELMAXSCALE 500000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "LOCATIONS2"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 10
>         MINSIZE 2
>         MAXSIZE 10
>         ANGLE AUTO
>        POSITION AUTO
>        OFFSET 0 0
>        COLOR 0 0 255
>       END
>       STYLE
>         SYMBOL "point"
>         COLOR 153 153 0
>         SIZE 6
>         MINSIZE 1
>         MAXSIZE 6
>       END
>     END
>   END
>   LAYER
>     NAME "LOCATIONS3"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_AND_LOCATIONS3.TAB"
>     MAXSCALE 400000
>     LABELITEM "Name"
>     SYMBOLSCALE 200000
>     LABELMAXSCALE 200000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "LOCATIONS3"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 10
>         MINSIZE 2
>         MAXSIZE 10
>         ANGLE AUTO
>        POSITION AUTO
>        OFFSET 0 0
>        COLOR 0 0 255
>       END
>       STYLE
>         SYMBOL "point"
>         COLOR 153 51 153
>         SIZE 6
>         MINSIZE 1
>         MAXSIZE 6
>       END
>     END
>   END
>   LAYER
>     NAME "Tourist Information"
>     STATUS OFF
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_TOURIST_INFORMATION.TAB"
>     MAXSCALE 10000
>     LABELITEM "Label"
>     SYMBOLSCALE 1000
>     LABELMAXSCALE 5000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Tourist Information"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 8
>         MINSIZE 2
>         MAXSIZE 8
>         ANGLE AUTO
>        POSITION UC
>        OFFSET 0 0
>       END
>       STYLE
>         SYMBOL "rectangle"
>         COLOR 255 51 0
>         SIZE 8
>         MINSIZE 3
>         MAXSIZE 8
>       END
>     END
>   END
>   LAYER
>     NAME "Shopping Center"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_SHOPPING_CENTER.TAB"
>     MAXSCALE 10000
>     LABELITEM "Label"
>     SYMBOLSCALE 1000
>     LABELMAXSCALE 5000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "shopping center"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 10
>         MINSIZE 2
>         MAXSIZE 10
>         ANGLE AUTO
>        POSITION UC
>        OFFSET 0 0
>       END
>       STYLE
>         SYMBOL "special"
>         COLOR 255 51 0
>         SIZE 15
>         MINSIZE 6
>         MAXSIZE 15
>       END
>     END
>   END
>   LAYER
>     NAME "Theater"
>     STATUS DEFAULT
>     TYPE POINT
>     CONNECTIONTYPE OGR
>     CONNECTION "CA_NAV_THEATER.TAB"
>     MAXSCALE 10000
>     LABELITEM "Label"
>     SYMBOLSCALE 1000
>     LABELMAXSCALE 5000
>     PROJECTION
>       "init=epsg:4326"
>     END
>     CLASS
>       NAME "Theater"
>       LABEL
>         TYPE TRUETYPE
>         FONT "vera"
>         SIZE 8
>         MINSIZE 2
>         MAXSIZE 8
>         ANGLE AUTO
>        POSITION UC
>        OFFSET 0 0
>       END
>       STYLE
>         SYMBOL "triangle"
>         COLOR 255 51 0
>         SIZE 8
>         MINSIZE 3
>         MAXSIZE 8
>       END
>     END
>   END
> ***********************
>  
> is it still possible to speed up my application?
>  
> ****
>  
> the system parameters of my application:
>  
> Windows XP professional
> MS4W 4.8.1
> data source -- MapInfo data
>  
> *--only CGI parameters are used,since it is a pure static version with 
> HTML,
>  
> is it possible to develop a pure static application based on 
> MapServer, even in conjunction with PHP/MapScript or Chameleon?
>  
>  
> thanks for any clues.
>  
> zhonghai
>  
> 16.05.2006
>
>
> On 5/15/06, *Steve Lime* <Steve.Lime at dnr.state.mn.us 
> <mailto:Steve.Lime at dnr.state.mn.us>> wrote:
>
>     We really need more information about the nature of the data. I
>     mean if you've got
>     20 layers each with a million polygons and are trying to show all
>     of them then 3 seconds
>     might be really fast! Also, the way you are symbolizing features
>     may impact things.
>
>     In my experience neither 1 or 2 is worth considering...
>
>     Steve
>
>     Steve
>
>     >>> Zhonghai Wang < zhonghaiw at GMAIL.COM
>     <mailto:zhonghaiw at GMAIL.COM>> 5/15/2006 9:15:49 AM >>>
>     Hi there,
>
>     for a special purpose I've developed an static version application
>     based on
>     MapServer CGI, which means I just use pure HTML tages for the GUI,
>     even
>     without JavaScript code snippets to validate forms.
>
>     I have about 20 map layers to display according to different map scale
>     (ussing the MAXSCALE, SYMBOLSCALE AND LABELMAXSCALE), there are no
>     data
>     classifications within a layer object, the status of all layers
>     are set as
>     default.
>
>     I've made a test on a standalone MapServer (XP system), every
>     request takes
>     about 3 second. Obvioursly it's not fast enough for a web
>     application, since
>     there may be many users requesting the server at the same time if the
>     application is published on the web.
>
>     Is MapServer really so slow? can anybody give me some ideas?should
>     I modify
>     the mapfiles?
>
>     I am wondering whether the following solutions will work:
>     1. define every layer as a seperate mapfile, and  combine them
>     together by
>     request
>     2. turn off the non-displayed layers off on the fly
>
>     are these possible to speed up MapServer performance?
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20060516/d01499d0/attachment.htm>


More information about the MapServer-users mailing list