Perphaps some results from mapscript performance tests would be helpful for me. <br>Here is some details as you wish:<br><br><span style="font-weight: bold;">Environment:</span><br>QA Server:&nbsp; 2x3GHz Pentium (PRD: 4 - 8 processors)
<br>
Application Server: IIS 5.0/6.0<br>
Memory: 3GB<br>
OS: WinXP or 2003 Server<br>
Technology: .NET/C#<br>
Application type: webservice<br><br><span style="font-weight: bold;">Data: </span><br>Map of Poland, shapefiles, above layers: <br>roads ( 600k polylines, categorized by attribute in table), <br>railroads (2K polylines)<br>
towns: (60K points, 3K polygons)<br>some adminitration districts (regions, subregions, etc, summary: 10Kpolygons in 3 layers)<br>forest, parks,etc (30K polygons)<br>lakes and rivers ( 21K polylines, 7K polygons)<br><br>Additional layers:
<br>Labels of almost each layer in good quality (antialiasing) - visible depends on scale.<br>Some data from my business client (could be e.g. 100K polygons in 3 layers)<br><br><span style="font-weight: bold;">Example application:
</span><br>Performance requirement: 1000 users sessions/hour.<br>Users session definition:<br>Session time: few random (avg. 10) minutes with doing actions zooming, changing coverage,&nbsp; on/off layers, etc.<br>Between actions user waits for avg 7 secs.
<br><br>WebService provide below functionality:<br>each user has its own map in session (will consider map pooling), data filtering (by atributes)<br>High quaility images like &quot;<a href="http://maps.google.com">maps.google.com
</a>&quot; but one image with 800x600 resolution<br><br>WebService methods:<br>bytes[] GetImage(sessionID) - getting image<br><br>SetZoom(sessionID, int zoom)<br>SetRectangle(.....<br>SetCenter<br>SetMapSize&nbsp; (default 800x600)
<br>SetLayerVisibility(sessionID, layerid, bool visibility)<br>PutSymbol( x,y, symbolID)<br>GetLegend<br>GetLayerAtributes<br>DrawLayerFiltered(sessionID, query) - drawing in memory, image with new layer will be returned by GetImage
<br>...<br>GetZoom,<br>GetCenter<br>etc.....<br><br><br>Can mapscript do it (quality and performance)? <br>How to store data: shapefiles or postgis? Maybe use 2 or 3 harddiscs if it will <font color="black" face="Arial" size="2">
increase</font> performance?<br>What about connection pooling to postgis, mapserver has one connection per process or more?<br><br>Please send be some advice, I will be very <font color="black" face="Arial" size="2">graceful.
</font><br><br><br>Best Regards,<br>Adrian<br><br><br><div><span class="gmail_quote">2008/1/22, Ed McNierney &lt;<a href="mailto:ed@topozone.com">ed@topozone.com</a>&gt;:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Adrian -<br><br>Well, what really matters is what &quot;many&quot; means to YOU and your application; my MapServer applications are probably quite different from yours, so if I have 2,000 simultaneous users that doesn&#39;t really tell you anything.&nbsp;&nbsp;If you can describe it in as much detail as possible, then it will make it much easier for us to give you advice.&nbsp;&nbsp;There are quite a few serious production implementation of both MapServer CGI and MapScript applications.&nbsp;&nbsp;And, as Dan correctly points out, a different tool might be even better for you.
<br><br>&nbsp;&nbsp;&nbsp;&nbsp; - Ed<br><br>Ed McNierney<br>Chief Mapmaker<br>Demand Media / TopoZone.com<br>73 Princeton Street, Suite 305<br>North Chelmsford, MA 01863<br><a href="mailto:ed@topozone.com">ed@topozone.com</a><br>Phone: +1 (978) 251-4242
<br>Fax: +1 (978) 251-1396<br><br>-----Original Message-----<br>From: UMN MapServer Developers List [mailto:<a href="mailto:MAPSERVER-DEV@LISTS.UMN.EDU">MAPSERVER-DEV@LISTS.UMN.EDU</a>] On Behalf Of Adrian Kruk<br>Sent: Tuesday, January 22, 2008 9:37 AM
<br>To: <a href="mailto:MAPSERVER-DEV@LISTS.UMN.EDU">MAPSERVER-DEV@LISTS.UMN.EDU</a><br>Subject: Re: [UMN_MAPSERVER-DEV] Is MapServer Thread-safe?<br><br>&gt;Why do you think this is a &quot;big limitation&quot;?&nbsp;&nbsp;There are many MapServer
<br>users, &gt;myself included, running MapServer as a CGI application - including<br>as a WMS &gt;server - with &quot;many clients running simultaneously&quot;.<br><br>What does mean &quot;many&quot; for you?<br><br>&gt;What kind of equipment are you using and what kind of user load do you
<br>expect?&nbsp;&nbsp;&gt;It sounds like you have concluded that a standard CGI WMS<br>application of &gt;MapServer is simply unsuitable for you, and I haven&#39;t seen<br>information that &gt;explains why you think that.<br><br>WMS is ok, but I need C# API to create any gis application (
e.g. with<br>adding/modyfing spatial features, with requested by bussiness client<br>webservice interface, etc).<br><br>The problem is with scalability with using mapscript. Changing server from 1<br>processor architecture to 4 performance will increase performance but I
<br>think that not much in really big workload.<br></blockquote></div><br><br clear="all"><br>-- <br>Pozdrawiam,<br>Adrian Kruk