Feature #32398

Freezable Cache Backend

Added by Robert Lemke over 3 years ago. Updated over 3 years ago.

Status:Resolved Start date:2011-12-08
Priority:Should have Due date:
Assigned To:Robert Lemke % Done:

100%

Category:Cache
Target version:TYPO3 Flow Base Distribution - 1.1 beta 1
PHP Version:5.3 Complexity:medium
Has patch:No

Description

Certain caches are static once they've been filled with data. One example is the classes cache in FLOW3 – after all proxy classes have been compiled, the cache must never be touched again in Production context.

Especially in the mentioned case, a cache backend could work with greatly improved performance if it knew that no changes are to be expected. It could create an index of existing cache entries which is loaded upfront. Existing cache entries could then be loaded right away without the need to check for expiry times or existence.


Related issues

related to Core - Feature #39430: Update cache framework to latest FLOW3 version Resolved 2014-04-17

Associated revisions

Revision c94e6f17
Added by Robert Lemke over 3 years ago

[FEATURE] Freezable Cache Backend

This introduces a new type of cache backends which supports freezing.
In a frozen state no modifications are allowed and thus enables the
cache implementation to optimize its tasks for speed.

The FileBackend was extended to support freezing and is now used for
the class cache in Production context. Measured on the blog example,
this change improved number of transactions per second by 29 %.

Change-Id: I1bd212157516875507ce7677515d14e8a611aa73
Resolves: #32398
Releases: 1.1

History

#1 Updated by Gerrit Code Review over 3 years ago

  • Status changed from Accepted to Under Review

Patch set 1 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/7162

#2 Updated by Gerrit Code Review over 3 years ago

Patch set 2 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/7162

#3 Updated by Gerrit Code Review over 3 years ago

Patch set 3 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/7162

#4 Updated by Gerrit Code Review over 3 years ago

Patch set 4 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/7162

#5 Updated by Gerrit Code Review over 3 years ago

Patch set 5 for branch master has been pushed to the review server.
It is available at http://review.typo3.org/7162

#6 Updated by Robert Lemke over 3 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

#7 Updated by Christopher Hlubek over 3 years ago

There is no way to re-compile classes in production anymore:

./flow3 flow3:core:compile gives an error The cache "FLOW3_Object_Classes" is already frozen. since the class cache is frozen. We need to "unfreeze" it on compilation.

#8 Updated by Karsten Dambekalns over 3 years ago

  • Target version changed from 1.1 to 1.1 beta 1

Also available in: Atom PDF