View Issue Details

IDProjectCategoryView StatusLast Update
653Composrcorepublic2015-01-03 20:11
ReporterChris Graham Assigned ToChris Graham  
PrioritynormalSeverityfeature 
Status resolvedResolutionfixed 
Summary653: Self-learning cache, and cache directory refactoring
DescriptionHave a self-learning cache for:
 - language information loading (we already have this -- so actually the code for that will get re-used at a higher level to handle all of this)
 - config option loading
 - permission loading
 - theme image loading
 - what blocks are needed
 - what Comcode pages (pages and panels) are needed and their meta-data
 - zone information loading
 - [and anything else we can see that is relatively non-volatile yet frequently accessed as independent units.]
 - what Javascript will be needed for <head>
 - what CSS will be needed for <head>

This should be a nice optimisation -- it'll greatly reduce the database load, in terms of query volume and size.

Alter the directory structure a bit so that we have:
 - (root)
  - caches
   - lang
   - persistent
   - self_learning
   - guest_pages
(currently we're fudging things a bit by storing unrelated stuff under lang_cached/persistent_cache, so lets get the dir structure accurate with all this)
Additional InformationSuccess metrics (not guaranteed, but nice targets to check to after work is done, to avoid stopping short):
 - Hardly any queries on normal Comcode page rendering -- only ones that there are are large ones where every returned row is needed
 - Minimal content-based queries on root download category rendering (with some test downloads and categories)
TagsType: Performance
Attach Tags
Time estimation (hours)16
Sponsorship open

Sponsor

Date Added Member Amount Sponsored

Relationships

parent of 652 ResolvedChris Graham Refactor cache clearing APIs 
related to 657 ResolvedChris Graham Cut-down the Tempcode preprocessing step 
related to 112 ResolvedChris Graham Promote hidden options 
related to 94 ResolvedChris Graham 'max' options 

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change