We're doing some data visualisations in our Skuid pages using several Javascript libraries. They work beautifully, but the only challenge we're facing is the Apex heap size limit. Being data visualisations, they want to access chunky datasets from our Salesforce objects. The performance in the browser is fine, but eventually we inevitably run into the heap size limit when we exceed 3MB.
So I did some experimenting and wanted to verify it here.
I separated one visualisation into a separate Skuid page and included that in a new tab in our main page using a page include. I checked the debug logs and we seem to now end up with two heap sizes to work with: one for our main page (which is housed in a Visualforce page) and one for the page include (which runs a Skuid Visualforce page called Include). That suggests that if we do a page include for each one of our visualisations, then we may get around the heap size limit.
So I did some experimenting and wanted to verify it here.
I separated one visualisation into a separate Skuid page and included that in a new tab in our main page using a page include. I checked the debug logs and we seem to now end up with two heap sizes to work with: one for our main page (which is housed in a Visualforce page) and one for the page include (which runs a Skuid Visualforce page called Include). That suggests that if we do a page include for each one of our visualisations, then we may get around the heap size limit.
- Is this the best approach for what I'm trying to achieve?
- When I access the new tab in our main page, the included Skuid page takes a few seconds, even when its model's Max # of Records is set to a low number like 10. Is that to be expected for includes?
Glenn Elliott, Champion
2. No, it's very quick. The page on its own takes about 1 sec (loading 3000 records), when included it takes about 3-4 seconds with the "Loading..." label showing.
I like the getMoreData() idea. We could certainly make use of that.