Feature #34827

Precompiled reflection data for rather static packages

Added by Robert Lemke about 7 years ago. Updated about 7 years ago.

Status:
Resolved
Priority:
Should have
Assignee:
Category:
Reflection
Start date:
2012-03-14
Due date:
% Done:

100%

PHP Version:
5.3
Has patch:
No
Complexity:
medium

Description

Packages which are usually not touched during development (such as FLOW3, Fluid etc.) don't need to be monitored for changes and thus could provide some precompiled reflection data which could be loaded if caches were flushed.

Such packages could be marked by a new "frozen" state which can be set and removed through a command line command.

Associated revisions

Revision e1810549 (diff)
Added by Robert Lemke about 7 years ago

[FEATURE] Precompiled reflection data for frozen packages

This feature introduces "frozen packages". Through the command line
command "package:freeze" one ore more packages can be set into a
frozen state. A frozen package is excluded from file monitoring and
its reflection data is stored in a file separate from the regular
caches. After caches have been flushed, this precompiled reflection
data is loaded in order to speed up the compile run during that first
hit.

With "package:unfreeze" packages can be unfrozen and "package:refreeze"
will refresh the precompiled reflection data of an already frozen
package.

Package freezing is only supported for Development context.

Resolves: #34827
Resolves: PHX-71
Releases: 1.1

Change-Id: Icee8530d8796f27345d75530c466fc0822285a58

History

#1 Updated by Gerrit Code Review about 7 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/9644

#2 Updated by Gerrit Code Review about 7 years ago

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

#3 Updated by Gerrit Code Review about 7 years ago

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

#4 Updated by Gerrit Code Review about 7 years ago

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

#5 Updated by Gerrit Code Review about 7 years ago

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

#6 Updated by Gerrit Code Review about 7 years ago

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

#7 Updated by Gerrit Code Review about 7 years ago

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

#8 Updated by Gerrit Code Review about 7 years ago

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

#9 Updated by Gerrit Code Review about 7 years ago

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

#10 Updated by Gerrit Code Review about 7 years ago

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

#11 Updated by Gerrit Code Review about 7 years ago

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

#12 Updated by Gerrit Code Review about 7 years ago

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

#13 Updated by Gerrit Code Review about 7 years ago

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

#14 Updated by Gerrit Code Review about 7 years ago

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

#15 Updated by Gerrit Code Review about 7 years ago

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

#16 Updated by Bastian Waidelich about 7 years ago

Some rough performance measurements for the record. Tested with current T3CON12 distribution (15.03.2012, 15:30) on Windows 7, 64bit (3 test runs per case)

Before:

flow3:cache:flush -> 7s
1st flow3:cache:warmup -> 55s
2nd flow3:cache:warmup -> 11s
1st request -> 48s
2nd request -> 7s

Now:

flow3:cache:flush -> 7s (+-0%)
1st flow3:cache:warmup -> 44s (-20%)
2nd flow3:cache:warmup -> 15s (+36%)
1st request -> 37s (-23%)
2nd request -> 7s (+-0%)

Now (with all packages except TYPO3.Conference frozen):

flow3:cache:flush -> 5s (-29%)
1st flow3:cache:warmup -> 26s (-53%)
2nd flow3:cache:warmup -> 7s (-36%)
1st request -> 20s (-58%)
2nd request -> 5s (-29%)

#17 Updated by Robert Lemke about 7 years ago

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

Also available in: Atom PDF