ThinkGeo.com    |     Documentation    |     Premium Support

WMS service load speed

Hello.


I am in the process of setting a few projects up with your WPF and Web applications, and will possibly also use the WMS server for raster imagery. Performance is my biggest issue. I have a few questions in that regard:



        
  1. Loading openstreemap through your websamples.thinkgeo.com/ is quite a bit slower than through this application which colleagues of mine are working on : geonode.sopac.org/maps/new (openlayers, geoserver, geowebcache). I found that initial loading was possible double with mapsuite, though once caches both were similar. Are you able to explain this? 

  2.     
  3. Have you done any performance testing with your WMS servers compared to say Lizard tech's Express Server, ArcGIS Server, and also opensource (as in the example above)?


thanks


 


Phil



Phil, 
  
   I tried the sopac.org site and it was slower than our site which leads me to believe that possibly the location has allot to do with the performance.  Another thing to consider is that the Amazon instances that we use to run the web samples are not all that beefy. Amazon also uses shared disk packs and sometimes the disk performance is not all that good.   
  
   While we have not compared the speed to the servers you suggested, we are black listed through ESRI and most likely LizardTech as well, we believe that the throughput is very good and can serve up tiles quickly.  The best way to test this is to download the evaluation and let the system cache, on the server, the images and see locally. 
  
 Thanks, 
  
 David Rehagen

Phil, 
  
   After a bit of research with the IP addresses it seems like you are in New Caledonia and the server you mentioned is in Fiji.  Fiji is quite a bit closer and may use more efficient cabling then to our servers in the US.  Something to think about when comparing the speeds. 
  
 David

 David,


Thanks  very much for your quick reply. I have run the sample web app on my local server and it is faster. OSM, google,bing in my WPF desktop app though run much slower. What explains this? 


In regards to my application, and reason for purchasing mapsuite, I am trying to create a fairly complete GIS app which allows local databases of census and other data to be thematically mapped, and also joined with online data sources, including backdrops such as bing, google, OSM. We are using WPF (though also testing web + ajax) because of the slighlty more powerful functionality, processing performance etc being a desktop application, though maybe I am mistaken here. Would Mapsuite web infact be a better way to go, particularly if we would like to get the application out to a wider range of users?


Here is basically what i am trying to achieve:



        
  1. Census + Survey data mapping application for Pacific Island Countries

  2.     
  3. Many users are in countries with slow internet connections, we would like the ability to connect to the majoroty of data offline, though with regular updates (even if slow) via the internet. We thought WPF with click-once would be the way to go, with install over the web or even on CD for those with no internet at all.

  4.     
  5. Ability to connect to SQL-based data sources via internet as well

  6.     
  7. Ability to load google, bing, OSM backdrops, but also to load up a fair amount of imagery.

  8.     
  9. In regards to backdrops performance is an issue because of internet connections so would like to be able to locally cache as much as possible. (Does the web version have server side caching as well as local?). For our own imagey we are still trying to determine the best way to handle this, particularly when there are many non-contiguous islands etc, so one large raster is not the solution. Not sure whether to use WMS server, with local caching or to have a large raster catalogue of data stored locally and loaded as a geolayer tiff (as per mapsuite example).

  10.     
  11. Ideally, if the web version can do everything we are trying to do (and easily run offline in browser), it also allows us to more seemlessly incorporate it with online databases, websites for a more interatcive user experience for those who do infact have a good internet connection.


Does this make sense? What would you recommend? 


thanks


Phil



Sorry, one more thing David. You mentioned you are "blacklisted" with ESRI? What does this mean? 
  
 thanks 
  
 Phil 
  


Phil, 
  
   What I mean by black listed is that we are competitors to ESRI so they won’t sell us any of their products.  We have tried when we wanted to integrate with ArcSDE but were denied the purchase. 
  
 I will respond to the other part of this post in detail later today. 
  
 David

Phil, 
  
   You have given me a good amount of information.  In general the web based application would provide easier access to the data as all the user needs is a browser however it has higher overhead on the bandwidth side.  With the web solution all of the mapping will be sent as image tiles and this has a bandwidth cost.  With a desktop application the vector data can be compressed greatly and then once the use has it there is literally no more bandwidth overhead less data updates.  A user can then zoom around and go anywhere and not incur any more internet trips. The desktop application also allows you to have a richer user experience as web based development has the limitation of HTML and performance limitations.  When I am trying to decide to build a web vs desktop app I think of the following things. 
  
 1. If the internet access is slow then the desktop app is better.  It may take longer to download initially be that’s better then is being slow as I use it. 
 2. If the users will use the application frequently or for long periods of time then I usually like a desktop application.  The interface can be richer and there is not the html lag. 
 3. If I plan on caching allot or want to automatically download updates etc then the desktop is better as you can setup services etc.  Web application are limited to their running sandboxes in the browser. 
  
 On your requirements side you can also download and integrate OSM data into the desktop application.  We have the data in shapefile format and if you ship the data for just the pacific areas it should be small. 
  
 On the web side of things I am not sure how you are going to do all your offline stuff, this is complicated for a browser application.  We can cache on the browser but it really is expected to be online. 
  
 For the raster part you can get images of the various islands and each can be their own image file.  You can easily incorperate them into the map and just have images around the islands and have vector data everywhere else. Another good thing about a desktop app is that you can shoose to use the cache or use bing etc when there is no internet connection. 
  
 David

Hi, 
  
 Not the first time that I speak about RAM Drive IMDISK (free).  In my case I have installed all the files required by our WMS server on the RAM Drive as well as the CACHE for the WMS plugin.  Just to say how fast it is!!!  after that it is up to the network…  last but not least I have also installed the RAM drive on my GEOWB server for the shapfiles… 
  
 have a great day.

Jean-marie, 
  
 Thanks very much for your experience share! 
  
 Best regards, 
  
 Don

Jean-marie,  
  
 Ram is just SO much faster than disk.  The thing that disappoints me is that it is so hard to know what is cached these days.  I was taught not cache very much because there are inherit levels of caching already being done.  First you have big disk caches these days and after that the OS should cache data coming from the disk if used often and who knows what else in between.  I guess the key is to know 100% that it is caches and that there is not much you can do beyond that.  I’m glad the ramdisk worked and thanks for the IMDISK reference, I didn’t know about them. 
  
 David

David,


I was about to post re performance difference between googleoverlay with WPF and web edition, and stumbled across a thread from early last year titled "Does Map Suite Silverlight Work with Google Maps and Bing Maps?"


Here Johnny mentioned that there was a big performance difference between them because desktop uses the Google static API and web uses the javascript library. This makes sense, but a 30 sec load time for a test (loading imagery which was not cached on my machine) around NZ compared to about 2 or 3 secs with web is enormous. Is there any way to get around this? Considering raster imagery is the "heavy" part of any spatial application, fast loading is crucial.


thanks


Phil



Phil, 
  
   Just to be certain you are asking about the performance of Silverlight’s Google and Bing Overlays, correct?  I am asking as this is a web edition thread and I was a little confused.  If so here is the details, the Desktop, WPF, SIlverlight and Core all used the older and slower method to fetch the bing tiles as that was all that was available at the time.  Since then we have upgraded the WPF, Desktop, and Core to the newer and faster system.  We did not have time to update Silverlight yet but it is on the list. 
  
 David

David, 
  
 Thanks again for your quick reply. No not silverlight, i am talking about WPF vs web edition. You indicate that the WPF has been updated to a faster system. Is this in version 5.5? i am running 5.0 and there is an enormous difference, which i understand as being because google static api is used compared to javascript api. 
  
 thanks 
  
 Phil

Phil, 
  
   We switched the way we were calling the Bing map service to use their new high performance version.  This really increased the speed of the Bing Overlay in pretty much all of the editions.  As for Google, at the moment they only have the static apis.  We could do directly against the stored tiles but that violates their license agreement.  The speed difference is that the javascript version goes against the static tiles while the static maps API has many additional layers and hoops it need sot jump through such as adding the copyright, stitching tiles together, possibly changing colors etc.  I bet they scaled up the tile server more than they scales up the static API. 
  
 David

thanks David, 
  
 Ok, i will test with 5.5 and compare bing WPF with web. Seems like the only way to have a nice google base layer is to use the web version…so all the performance benefits of desktop then go out the window while we wait for our google tiles to load :( 
  
 Phil

Hello Phil, 
  
 Thanks for your help, feel free to let us know if you still meet problem. 
  
 Regards, 
  
 Gary