Project

General

Profile

Actions

Feature #55934

closed

Entitycache for extbase

Added by Philipp Wrann almost 11 years ago. Updated over 9 years ago.

Status:
Closed
Priority:
Could have
Assignee:
-
Category:
Extbase
Target version:
-
Start date:
2014-02-12
Due date:
% Done:

0%

Estimated time:
PHP Version:
Tags:
Complexity:
hard
Sprint Focus:

Description

Lately i thought hard about a the implementation of a entity cache for my package but it would be a very nice-to-have generic feature i think.
By default turned of because for most projects everything is fine at the moment, but it should be possible to configure such a cache.

extbase_entitycache
An entry would look like
'\Vendor\Package\Domain\Model\Entity:1:0' = [
'uid' => 1,
'title' => 'Title',
'relations' => [
'Vendor\Package\Domain\Model\EntityB:1:0',
'Vendor\Package\Domain\Model\EntityB:2:0',
]
]

All non-transient properties would be saved this way (if simple type, storage or instanceof AbstractEntity)
Values would be Inserted without any validation
Cached entities would only be loaded for configured models and only in FE context.
So you would not have to care about corrupted cache entries causing wrong data in your database.

you could register slots on persistence signals of the extbase ORM
additionally you could implement a TCEMain Hook that creates/updates/deletes the cache entry on the fly
you could also register a task/hook to create the modelcache for all entities of that type (after clearing the cache or in a given time)

That way only real search-logic would be requested, but all results could again be mapped from the cache.
instancing lazy properties would event be much faster.

What do you think? Are there allready plans on that, is it realizeable?

I could try to realize it by myself but i am afraid, caused to my missing insight, it would never get production ready.

Actions

Also available in: Atom PDF