[Qgis-developer] WFS upgrade: how much?
Bill Clay
bill.clay at libero.it
Mon Dec 26 04:26:43 EST 2011
Hello, all.
I've been working on WFS bug 4604 and feature request 4280 as my first
attempt to contribute as a QGIS developer. I have working code for
three different approaches. Which one should be completed and used?
1. Minimal patch. Gives you a choice between caching the ENTIRE WFS
layer for the life of the layer (slow layer creation for big layers on
remote WFS providers) or freshly fetching WFS extents each time they are
rendered (slow on each WFS layer rendering).
2. Medium patch. If you choose not to cache the entire layer, an
expanding extent is cached, starting with the first rendered extent.
Each time a new area is rendered, the cached extent expands, combining
the new canvas extent with the previous WFS layer extent. On each
expansion, the cache is discarded and the expanded extent fetched
fresh. After a short "training period," local pans and zooms are fast
because they work from the cache without requiring a new WFS fetch.
3. Maximum patch. The "expanding cache" approach of nr. 2 above, but
instead of replacing the cached extent each time the extent expands, we
fetch only the NEW areas of the expanded extent (i.e., 1-4 rectangles
around the perimeter of the cached layer extent) and ADD their features
to the cache (discarding duplicate features). Faster rendering of new
areas than nr. 2 when there are many features, but slower for small
layers because a separate HTTP GET is required for each of 1-4 new areas.
Is there a "typical" WFS user? Do they use WFS layers with many
features? If so, patch 3 might be best; otherwise maybe patch 2.
Best wishes for the holidays!
Bill Clay
More information about the Qgis-developer
mailing list