bitprophet/fullerene — Issue #3: Caching
Author: bitprophet
Created: 2011-10-17 23:07:01+00:00
State: open

Fullerene won't be as fast as eg Munin which prerenders graphs every ~5m, especially in any pages that display more than a handful of graphs; but in many situations we don't necessarily need "live" up-to-the-second renders.

Caching the calls to the backend `render` could be useful, even just simple caching to the filesystem -- though caching in-memory or in-database would probably be ideal. These graphs are never that large or numerous. E.g. a fully primed cache of a system showing 50 hosts with 50 metrics each at ~35k/image for small/medium sized graphs, is 90 MB.

Could implement either going by implicit cues like requested timeperiod (anything looking farther back than, say, the last 12 hours might use the cache as it probably doesn't need the last minutes to be useful) or simply a toggle UI element which defaults to using a cache and lets a user force a non-cached view when necessary. Latter could cause confusion, though, since it forces the user to remember to disable cache.