Caching Question - tricky one

402
2
11-19-2013 12:14 PM
ESRIESRI1
New Contributor II
My Silverlight application has one feature layer, one dynamic service layer (which has 100 layers) and several graphics layers. I would like to improve the performance of application by caching the dynamic service layer.

a) In dynamic service layer - out of 100 layers, three layers are changing every day. I do not want to cache these three layers. If I create a separate map service for these 3 layers and use another separate service for remaining 97 layers and cache them, then I have modify the code. This is complex change.

b) My application works in both in WGS 84 and Web Mercator. The spatial reference is set at run time in code. Because of this I need to create a another service in web Mercator and cache them. Now this becomes overhead.

How to meet these requirement or other words best approach. All I need to improve the performance of application with minimal effort.

Please advise.
Reply
0 Kudos
2 Replies
JasonCleaver
Occasional Contributor
Here is a suggestion...that will work in your clients are using SDE.

1.  In ArcMap, create a grid covering the geographic area of your data
2.  Write a program in ArcObjects that determines the inserts/updates/deletes between two versions, like SDE.DEFAULT and a child version.  When determining what has changed, use the geometry of the changed record to spatially determine what polygon was affected from the grid you created in step 1.
3.  Then you could create a shape file that only contains the updated grids, and then re-cache that area.
Reply
0 Kudos
LakshmananVenkatesan
Occasional Contributor
Thanks for your response. I don't think your solution may not be helpful at this moment. Among 100 layers, 97 layers are culture layers they do not change much. My application is not much of editing rather than reading the data from SDE and processing shapes using Geoprocessing Tools.
Reply
0 Kudos