View Issue Details

This bug affects 1 person(s).
 2
IDProjectCategoryView StatusLast Update
08928Feature requestsExpression Managerpublic2015-02-22 14:30
ReporterTMSWhite Assigned To 
PrioritynormalSeverityfeature 
Status newResolutionopen 
Summary08928: improve memory footprint
Description

LimeExpressionManager is implemented as a Singleton, and the entire LEM object *(which contain an embedded ExpressionManager object) is serialized within $_SESSION. This can take up a lot of memory for large surveys, and can affect performance.

Additional Information

Is the serialization really needed, or can Yii properly handle LEM session persistence? (e.g. keep the unserialized LEM instance in $_SESSION, but not both the serialized and unserialized versions)? Does Yii have even better ways of managing this situation?

The original motivation for creating LEM as a singleton was that initialization of LEM was time consuming. Does Yii have a better way to manage a single instance of LEM than the current (pre-Yii) approach?

Does this concern about the time to build the LEM singleton still hold (especially now the Question objects are used), or would it make sense not to hold onto LEM in $_SESSION at all?

If some, but not all, of LEM's data should be held in $_SESSION (e.g. to avoid re-querying the database to re-build the survey instance), how much of a memory savings is likely to be achievable?

TagsNo tags attached.
Bug heat2
Story point estimate
Users affected %

Users monitoring this issue

DenisChenu

Activities

There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2014-04-01 20:19 TMSWhite New Issue
2014-04-02 09:29 DenisChenu Issue Monitored: DenisChenu