[GIS] Improving performance of Ext Grid with GeoExt WMSCapabilitiesStore

ext-jsgeoextperformance

i have a question concerning the performance of the Ext Grid when loading big datasets from the GeoExt WMSCapabilitiesStore.

My application loads about 2500 layer records in an Ext Grid Panel. Once the records are loaded the application works very well, thanks to the Buffered Grid View plugin. But the problem is, that the initial load takes a very long time (about 10 seconds) which is not very responsive.

I understand that it takes quite a while to generate layer records from a XML file. But since it is not possible to receive WMS Capabilities as JSON (which is recommented for huge datasets in Ext), maybe there is an other way.
I assume that most of the time is used to provide an array from the XML request. It seems not very clever, that this process should be repeated every time someone opens the page, especially because the data is static.

Maybe there is some way to create an array with all the layer records once and load it into the grid, instead of transforming the data every time?

Best Answer

You might store your data in the LocalStorage. It allows you have the data stored in the browser. You'll need a data model which you fill with data from XML and store in the browser. The next time you just check if the data is stored and download it if not.

The Ext Grid will work with these data well.

Have you considered paging the data in grid (you probably don't display all the rows at once)?