metteo/geodatastore

Caching KML or writing to disk

Opened this issue · 3 comments

I have found that geodatastore's with more than about 50 points causes App
Engine to give High CPU warnings when requesting the complete KML via the
request.

http://geodatastore.appspot.com/gen/request?operation=get&output=kml

I would assume most maps are viewed more than added to.

Is there a way for geodatastore's App Engine to cache the KML file, and
update the cache every time a new element is added to the database.  This
might alleviate the CPU warnings.

I don't think app engine allows writing to a file, but if it does appending
to the file could also be a solution.



Original issue reported on code.google.com by Layne.Mo...@gmail.com on 20 Oct 2008 at 1:48

Yes this would be easyily possible using memcache. 

(I believe the georss output actually produces more cpu warnings - probably as 
that 
uses templates, - but that again should be easily cacheable using memcache) 

Original comment by BarryBHu...@gmail.com on 20 Oct 2008 at 8:18

  • Added labels: Type-Enhancement
  • Removed labels: Type-Defect
Great-- I wanted an excuse to try out memcache. I'll experiment with this soon. 

Original comment by pamela.fox on 20 Oct 2008 at 10:23

  • Added labels: ****
  • Removed labels: ****
See r29. I memcache all geometry queries that are standard (no extra queries 
like 
bounding box), and also memcache the GeoRSS template. I clear the memcache 
whenever 
something is added/edited/deleted.
I haven't memcached the actual KML output, so that might still be slow (though 
the 
query retrieval aspect should be fast). I kind of want to convert that to use 
Django 
templates first, for consistency with the GeoRSS output.


Original comment by pamela.fox on 13 Nov 2008 at 7:37

  • Added labels: ****
  • Removed labels: ****