It appears that Leaflet Markercluster also supports chunked loading to prevent browser timeouts when loading 1000s of markers. This would be a great feature to have in IPGVM.

Reference: https://github.com/Leaflet/Leaflet.markercluster#handling-lots-of-markers

I was in the process of seeing if I can somehow integrate Geocluster with IPGVM, but if the chunkedLoading option were to work, then it may no longer be necessary.

Thanks in advanced for the feature request consideration.

Comments

NWOM created an issue.

rdeboer’s picture

Good idea NWOM!
We should both look into the chunkedLoading option.
Rik

n20’s picture

That would be indeed a nice feature to have! Just looking at the moment for a solution to display 50k+ markers smoothly.

rdeboer’s picture

@N20:

Before you get your hopes up too high... We are working in a Drupal context.
Personal experience has taught me that the limiting issue is not Leaflet, not Leaflet MarkerCluster, not Views, not the database, but the Field API.

For a better understanding and some relief, please read the entire project page and reference article https://www.drupal.org/project/views_accelerator

nwom’s picture

My workaround currently is to use Panels Hash Cache. Basically, I set the Panel which contains the view to expire every 24 hours, and every night at around 2 AM I will create a cronjob that clears the cache from the page, and another job to recrawl it. The view used to take 8 minutes to load (uncached with Views Accelerator active), now only loads in 2-3 seconds (cached with Panels Hash Cache).

rdeboer’s picture

@NWOM, #5
Thanks for sharing that tip.
The downside of that is that you cannot use a View/Map whose output/appearance depends on the visitor location or a filter value.
So it won't work for everybody.
But in your scenario, the gains are clearly huge.
Rik

nwom’s picture

@RdeBoer
Yes it's definitely only a workaround in this case. Luckily though, you can set it up to cache depending on URL, Context, Query Strings, User, and User Role. It will then create a unique cached page based on every combination that is set. So it technically "could" work automatically for every scenario, but with an 8 minute load time (in my case), it would be a lot of work to go through and create a job that "re-crawls" every potential combination. Either way, I definitely recommend it as a caching solution for panels that don't have a unusually long load time.

rdeboer’s picture

Enlightening!
Worthy of a blog post NWOM!
Rik