Epic #55065

Epic #55070: Workpackages

WP: Overall System Performance (Backend and Frontend)

Added by Ingo Schmitt over 1 year ago. Updated 12 days ago.

Status:New Start date:2010-07-02
Priority:Could have Due date:2014-07-09
Assigned To:- % Done:

81%

Category:Performance Spent time: 138.40 hours
Target version:6.2.0 Estimated time:38.00 hours
Sprint Focus:

Description

TYPO3 6.2 LTS will be used in enterprise environments as well as on budget hosting-environments. These systems will have a lot of content or many requests or even both.
In order to provide the necessary technical basis for those use cases, the overall performance of TYPO3 CMS must be in- creased. Also, the main performance of TYPO3 will be reviewed and optimized to get a faster system.


Subtasks

Story #55071: review current caching types and differentiate these typesClosed

Story #55072: implement compile time cacheClosed

Story #55073: review autoloader and language cacheClosed

Task #54990: ClassLoader cache ist too slow, no matter which CF Backen...Resolved

Task #54984: "Clear all caches" makes the site unavailable for several...Closed

Story #55074: implement configuration cacheClosed

Story #55075: review TCA cache and increase performance and scalabilityClosed

Story #55076: review frontend rendering cache and rootline cacheClosed

Task #39295: Wrong expires date in cf_cache_pagesectionResolved

Story #55077: review bootstrap for ajax-calls and streamline processResolved

Story #55078: Optimize PHP code performance in TYPO3 methodsClosed

Task #54777: Use PHP native htmlspecialchars_decode()Resolved

Task #54085: Replace all strcmp() calls with ===Resolved

Task #54091: Use === operator instead of strlen() to check for zero le...Resolved

Task #54265: Use (int) instead of intval() or (integer)ResolvedJo Hasenau

Task #54560: Replace JavaScriptEncoder with json_encode()Resolved

Task #55198: Replace trimExplode + foreach with explode + trim within ...ResolvedJo Hasenau

Task #54525: Optimize file- and path functions in GeneralUtilityResolved

Task #55122: Cleanup and optimize methods in ExtensionManagementUtilityResolvedMichiel Roos

Task #54734: Optimize ext_tables and ext_localconf cache filesClosed

Bug #52949: Speed decrease since 4.5Resolved

Task #53029: Improve performance of the class loader ResolvedThomas Maroschik

Task #53744: Change ClassLoader cache from proxy require files to stan...ResolvedThomas Maroschik

Task #53747: Change TCA cache from php code to serialized arrayResolvedThomas Maroschik

Feature #52642: CF: Implement Simple db, apc & memcached backendAccepted

Task #53467: Improve flush by tag performance for the file cache backendUnder ReviewTymoteusz Motylewski

Bug #53556: classLoader->loadClass calls requireOnce twice per classClosed

Bug #53918: t3skin calls addIconSprite for each languageResolved

Bug #53962: Class loader does not cache non existing classesResolved

Bug #53702: FAL fetches storages twice on every BE requestResolved

Task #54251: GeneralUtility::array_merge_recursive_overrule has bad pe...ResolvedMarkus Klein

Bug #53862: isValidUrl idna converts whole URI instead of domain onlyResolved

Bug #52125: Saving records takes ages to completeResolved

Bug #52235: Timeout when copying pages recursively due to cache-clear...Resolved

Bug #52374: Editing a sys_filemount is very slowNewMathias Schreiber

Bug #53598: Select/Delete fe_sessions twice per requestResolvedAlexander Opitz

Bug #54982: Performance of eID-scripts in TYPO3 6.2ResolvedAlexander Opitz

Bug #55022: PackageManager Cache is invalid if typo3 dir has symlinksResolvedAlexander Opitz

Bug #56307: Findings from Bootstrap/PackageManager/ClassLoader analysesAcceptedSteffen Ritter

Bug #56308: ClassLoaderCache superflouousClosed

Bug #56310: The PackageManager checks every boot if all required pack...ResolvedThomas Maroschik

Bug #56311: PackageFactory does not need to be initialized on regular...ResolvedThomas Maroschik

Bug #56312: Dependency Resolver does not need to be initializedAcceptedBenjamin Mack

Bug #56313: Cache Identifiers shorten the MD5 hashResolved

Bug #56314: setCacheHashOptions from Bootstrap not relevant for EIDNew

Bug #56315: Optimize TimeTracking init in eID CaseRejected

Bug #56316: inline BEUserAuth::getCookieNameResolvedThomas Maroschik

Bug #56317: Cache Local and Default Configuration to prevent duplicat...New

Bug #56318: Check wether the ConfigurationManager can be omitted/redu...Closed

Bug #56319: Merge Cache/Cache and CacheFactory into CacheManagerResolved

Bug #56320: Check emptying the Flow Classes as far as possibleRejected

Bug #56322: GetAliasesForClass not usedClosed

Bug #56323: cache_classes should cluster by Package instead of ClassClosed

Bug #56324: Class Loader should not try to runtime resolve class-pathesClosed

Bug #56325: Move "finalClassNameCache" from GeneralUtility to ClassLo...Resolved

Bug #56326: Evaluate and Merge ClassAliasMap into Classloader classRejected

Bug #56328: Extract complex "class loader cache building" code into C...Closed

Bug #56330: Add all classes which are needed anyhow within the minima...Rejected

Bug #56331: Evaluate if we can profit from concatenate all baseRequir...Resolved

Bug #56333: MicroOptimize ClassLoaderClosed

Bug #56334: Prevent inclusion of LogLevel due to ConfigDefault referralNew

Bug #56335: Prevent Inclusion of ResourceStorage from BootstrapResolvedThomas Maroschik

Bug #56336: Prevent Inclusion of MediaWizardProvider* in Base BootstrapResolved

Bug #56337: Remove manual array calculation in Locales and put the ar...Needs Feedback

Bug #56340: Remove the VariableFrontend from requiredBaseClassesClosed

Task #56341: Evaluate if it is really reasonable to have TYPO3\CMS\Cor...ClosedSteffen Ritter

Task #56538: Cache the $GLOBALS['TYPO3_LOADED_EXT'] as an arrayResolvedThomas Maroschik

Bug #56933: Cached class loader misses are not considered on retrievalResolvedThomas Maroschik

Task #56934: Move information in Package classes into composer filesResolvedThomas Maroschik

Story #57862: Add possibility to make all TCA additions cachedResolved

Task #57863: Introduce a signal in ExtensionManagementUtility::loadBas...Resolved

Task #57881: Make category TCA changes cacheableResolved

Task #57942: Provide API to add cached TCA changesResolved

Bug #23069: Bottleneck in t3lib_tcemainResolved

Task #55179: Optimize SQL PerformanceClosed

Bug #55180: Increase Determination of siteroot pageResolvedIngo Schmitt

Bug #55181: Speedup domain redirection lookupResolvedIngo Schmitt

Bug #55182: Speedup selection of storageClosedIngo Schmitt

Bug #55184: Filling the entries from sys_registry does not use an indexClosedIngo Schmitt

Feature #27372: Execute native prepared queries in t3lib_DBResolvedXavier Perseguers

Bug #24960: Rewrite t3lib_loadModules::getRelativePath()Rejected

Task #55578: DocumentationClosed

Epic #55656: Optimize overall Extbase performanceAccepted

Task #55654: Extbase: Optimize ClassInfoFactory with the ClassInfoCacheAcceptedMarc Bastian Heinrichs

Story #55168: Optimize Extbase generic persistenceAcceptedFelix Oertel

Task #55167: Extbase: avoid parseQuery() / buildQuery() to be called m...ResolvedFelix Oertel

Task #55661: Add functional tests for extbase persistenceResolvedFelix Oertel

Task #57173: Use of cf_extbase_typo3dbbackend_queries results in fatalResolvedXavier Perseguers

Task #57130: Extbase Queries with NULL comparison don't work anymoreResolved

Task #57104: Regression: Query building fails for LazyObjectStorageResolved

Task #57263: Typo3DbQueryParser does not handle LowerCaseInterface cor...ResolvedFelix Oertel

Task #57338: Make Typo3DbQueryParser SingletonResolved

Task #55169: Extbase: fetch child objects in one queryUnder ReviewFelix Oertel

Feature #60460: Refactor lazyLoading handling in extbaseAcceptedFelix Oertel

Task #53514: Extbase: DataMapper causes redundant queriesResolvedNico de Haen

Task #55360: Extbase: use preparedStatement in generic persistenceResolvedFelix Oertel

Task #57067: Follow-Up re-use preparedStatement objectAcceptedFelix Oertel

Task #57254: Fix usage of own prepared statement object in $query->sta...Resolved

Task #56979: Add setting for DataMapper to enable preparedStatementsNew

Task #59917: User Repositories in internal persistence logicUnder ReviewFelix Oertel

Story #54567: Extbase: overall performance of backend modulesClosedFelix Oertel

Task #54571: Extbase: Avoid TS parsing in BE if not necessaryClosedFelix Oertel

Task #55653: belog: cache the beusers usernameResolved

Feature #48960: Extbase: Backport lazy dependency injectionNewMarc Bastian Heinrichs

Story #55079: review Extbase caching for frontend and backendNew

Task #55044: Make Extbase use cache group "pages"ResolvedBenjamin Mack

Task #54701: Cache global TypoScript template in backendNewFelix Oertel

Task #54813: BackendConfigurationManager figures out wrong pidNewFelix Oertel

Task #57594: Optimize ReflectionService Cache handlingAcceptedMarc Bastian Heinrichs

Task #54605: Inject annotations should not be used by core (~5% perfor...Under ReviewMarc Bastian Heinrichs

Task #56108: Cleanup \TYPO3\CMS\Recordlist\RecordList\DatabaseRecordLi...Closed

Task #56109: Cleanup \TYPO3\CMS\Lang\LanguageServiceResolved

Task #56110: IconUtility::getSpriteIcon() needs a cacheResolved

Bug #58357: Superfluous SQL queries on copying recordsResolvedOliver Hader

Bug #59587: Performance killer: APC cache backend, wrong assignment o...ResolvedAlexander Opitz


Related issues

related to Core - Feature #17085: HTTP GET 'If-Modified-Since' ignored Under Review 2007-03-06
related to Core - Bug #56354: Speed up updating the extension list Resolved 2014-02-26

History

#1 Updated by Ingo Schmitt over 1 year ago

  • Estimated time set to 400.00
  • Parent task set to #55070

Also available in: Atom PDF