Feature #34827

Precompiled reflection data for rather static packages

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

Status:Resolved Start date:2012-03-14
Priority:Should have Due date:
Assigned To:Robert Lemke % Done:

100%

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

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
Added by Robert Lemke over 3 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 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/9644

#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/9644

#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/9644

#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/9644

#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/9644

#6 Updated by Gerrit Code Review over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 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 over 3 years ago

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

Also available in: Atom PDF