AgileVentures / projectscope

MVP dashboard for ProjectScope, using new gems architecture developed by AV folks
2 stars 14 forks source link

avoid caching in gems, promote caching in db via metric_sample #45

Open tansaku opened 8 years ago

tansaku commented 8 years ago

I think that where possible the gems should avoid memo-izing or caching any data. Taking a leaf from the functional programming approach, I think the gems will be simpler and easier to maintain if they don't do any state management, which can be handled by the AR support in the main rails projectscope system. I think a call to raw_data or image on the gem should always generate the representation from scratch. Conversely it's calls to the MetricSample model in the rails app that will always pull the database stored data for efficiency - at least that's how we've got the Rails app working at present ...