[TYPO3-dev] Performance of inline records in backend

Thomas "Thasmo" Deinhamer thasmo at gmail.com
Thu Nov 19 22:51:06 CET 2009


But do we need one query per inline record?
Wouldn't a single query do the job?

Using this for TCA configuration with foreign_field:
SELECT * FROM inline_records_table WHERE parent = parent_table.uid

or this with a CSV list of children:
SELECT * FROM inline_records_table WHERE FIND_IN_SET(uid, children)

Or similar?!

Thanks,
Thasmo


Mark Johnston schrieb:
> My experience is that 500 inline queries should not be expected to perform well in most 
> systems.  My reasoning is this:  A noticeable, but perhaps acceptable, delay in 
> showing the records might be 1 second.  This is speaking only of the delay due 
> to assembling the inline records from the database.  This implies that each 
> query must take 2 milliseconds (ms) on average, which would be a very fast 
> response time to expect by the average system.  50 to 100 ms would be much 
> more expected, I think.
> 
> This means that 500 queries could easily be expected to add 25 to 50 seconds 
> to the load time of a page, which is usually not a good thing ;).  These 
> times are back-of-the-envelope estimates only, but you get the idea.
> 
> Page browsing (to limit the number of separate queries) is one possible 
> option, as you say.  Another option might be to use AJAX to allow the outer 
> page to display more quickly while filling in the inner details behind the 
> scenes.
> 
> I hope this information might be helpful for you to consider.
> 
>      --Mark
> 
> 
> Thasmo (Thomas Deinhamer) wrote:
>> Is there a single query for all inline records,
>> nor will they be fetched all seperately? I did have
>> similar performance issues when selecting many records
>> in a frontend plugin with a seperate query.
> 
>> 500 inline records would mean 500 queries in a loop.
> 
>> But even this should not slow down the fetching that much, no?
> 
>> Besides the idea of a pagebrowser, what may be the
>> poor performance of the display of many inline records?




More information about the TYPO3-dev mailing list