Select to view content in your preferred language

I use many basemaps in my app and it is slow - any ideas what would help?

2478
2
Jump to solution
06-15-2012 01:49 AM
KarolinaKarpisz
New Contributor
Hi,

I am using the flex viewer, the basic version with a few small changes, and I have 7 base maps in my app - all are my data (historical maps to compare with the up to date state).
Most of them are high resolution scans, all are georeferenced and cached.

When I open the app through firefox all the basemaps load at the very beginning what makes the performance bad. Is it possible to load just one default map at first and load/open the other when the user clicks on it?
Does anyone have other ideas how to make the app faster?

Thank you in advance
Karolina Karpisz
Tags (2)
0 Kudos
1 Solution

Accepted Solutions
RobertScheitlin__GISP
MVP Emeritus
Karolina,

   If you do have them added as basemaps then only one is really loaded at start-up. You can verify this by using a utility like fiddler or charles and see the http requests that are made but take my word for it. Also the Viewer has a UI widget called the MapSwitcher that controls the toggling of basemaps (meaning only one visible at a time, unless you group base maps with the same exact label), and a more button that acts as a TOC and allows you to switch on and off operational layers. There is also another OTB widget called the LayerListWidget that is TOC type widget with out the legend portion. In the code gallery there is my TOC widget which is more like the ArcMap TOC with legend swatches and check boxes for layers and menus to interact with individual layers. So if you set the visibility of all you layers but one to false (as it should be for basemaps anyway) then you can use any of the three widgets I mentioned to turn on other layer only when the end user needs them.

  If all of your layer cached then they are more than likely cached at the same levels and the same spatial reference so re-projection on the fly by the server is not the issue. In the actual administration of your ArcGIS Server there are a couple of things you can do to speed up your Map Services like adding more instances of the service at start-up instead of the default 1 instance and max of 2. There is a good white paper you can search for on the esri support site about ArcGIS Server administration and Map Service optimization.

Don't forget to click the Mark as answer check on this post and to click the top arrow (promote).
Follow the steps as shown in the below graphic:

View solution in original post

0 Kudos
2 Replies
JoeHershman
MVP Alum
It has been a little since I have done much with flex viewer.  But you could write a pretty straight forward widget with a combo box perhaps and a button and let the user select the service to load.  Adding a service at run time is simply Map.Layers.Add(myLayer);
Thanks,
-Joe
0 Kudos
RobertScheitlin__GISP
MVP Emeritus
Karolina,

   If you do have them added as basemaps then only one is really loaded at start-up. You can verify this by using a utility like fiddler or charles and see the http requests that are made but take my word for it. Also the Viewer has a UI widget called the MapSwitcher that controls the toggling of basemaps (meaning only one visible at a time, unless you group base maps with the same exact label), and a more button that acts as a TOC and allows you to switch on and off operational layers. There is also another OTB widget called the LayerListWidget that is TOC type widget with out the legend portion. In the code gallery there is my TOC widget which is more like the ArcMap TOC with legend swatches and check boxes for layers and menus to interact with individual layers. So if you set the visibility of all you layers but one to false (as it should be for basemaps anyway) then you can use any of the three widgets I mentioned to turn on other layer only when the end user needs them.

  If all of your layer cached then they are more than likely cached at the same levels and the same spatial reference so re-projection on the fly by the server is not the issue. In the actual administration of your ArcGIS Server there are a couple of things you can do to speed up your Map Services like adding more instances of the service at start-up instead of the default 1 instance and max of 2. There is a good white paper you can search for on the esri support site about ArcGIS Server administration and Map Service optimization.

Don't forget to click the Mark as answer check on this post and to click the top arrow (promote).
Follow the steps as shown in the below graphic:
0 Kudos