Feature #32398

Freezable Cache Backend

Added by Robert Lemke almost 8 years ago. Updated almost 8 years ago.

Status:
Resolved
Priority:
Should have
Assignee:
Category:
Cache
Start date:
2011-12-08
Due date:
% Done:

100%

PHP Version:
5.3
Has patch:
No
Complexity:
medium

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 TYPO3 Core - Feature #39430: Update cache framework to latest FLOW3 version Closed 2014-04-17

Associated revisions

Revision c94e6f17 (diff)
Added by Robert Lemke almost 8 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 almost 8 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 almost 8 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 almost 8 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 almost 8 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 almost 8 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 almost 8 years ago

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

#7 Updated by Christopher Hlubek almost 8 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 almost 8 years ago

  • Target version changed from 1.1 to 1.1 beta 1

Also available in: Atom PDF