experimental change: render stale map data tiles before downloading fresh data - should give a more responsive appearance of data

also increase cache expiry time to 15 mins
This commit is contained in:
Jon Atkins 2013-10-25 07:10:35 +01:00
parent c4990d31bd
commit 8270812406
2 changed files with 10 additions and 2 deletions

View File

@ -11,7 +11,7 @@ window.DataCache = function() {
// entries would grow indefinitely. an hour seems reasonable from experience with the data, so 55 mins max cache time // entries would grow indefinitely. an hour seems reasonable from experience with the data, so 55 mins max cache time
// this.REQUEST_CACHE_MAX_AGE = 55*60; // maximum cache age. entries are deleted from the cache after this time // this.REQUEST_CACHE_MAX_AGE = 55*60; // maximum cache age. entries are deleted from the cache after this time
//UPDATE: this timestampMs parameter doesn't work, so reduced max age to limit RAM usage //UPDATE: this timestampMs parameter doesn't work, so reduced max age to limit RAM usage
this.REQUEST_CACHE_MAX_AGE = 5*60; // maximum cache age. entries are deleted from the cache after this time this.REQUEST_CACHE_MAX_AGE = 15*60; // maximum cache age. entries are deleted from the cache after this time
if (L.Browser.mobile) { if (L.Browser.mobile) {
// on mobile devices, smaller cache size // on mobile devices, smaller cache size

View File

@ -247,7 +247,15 @@ window.MapDataRequest.prototype.refresh = function() {
this.cachedTileCount += 1; this.cachedTileCount += 1;
} else { } else {
// no fresh data - queue a request // no fresh data
// render the cached stale data, if we have it. this ensures *something* appears quickly when possible
var old_data = this.cache && this.cache.get(tile_id);
if (old_data) {
this.render.processTileData (old_data);
}
// queue a request
var boundsParams = generateBoundsParams( var boundsParams = generateBoundsParams(
tile_id, tile_id,
latSouth, latSouth,