Performance Channel

Folgende Herausforderung. Ich betreibe 2 Accounts mit den identischen Kanaleinstellungen, auf dem gleichen Server. Konto A hat ca. 40% weniger Kontakte als Konto B.

Circle/Kanal
– Neu – Empfangen

Tag Auschließen
– 12 Begriffe

Sprachen
language = ‚un‘ OR language = ‚de‘ OR language = ‚en‘

Aufrufzeit Kanal mit Account A

Datenbank: 0.571/0, Netzwerk: 0, Darstellung: 0.07, Sitzung: 0, I/O: 0, Sonstiges: 0.16, Gesamt: 0.8
Class-Init: 0.011, Boot: 0.143, Init: 0.002, Inhalt: 0.627, Sonstiges: 0.013, Gesamt: 0.797

Aufrufzeit Kanal mit Account B

Datenbank: 7.949/0, Netzwerk: 0, Darstellung: 0.06, Sitzung: 0, I/O: 0, Sonstiges: 0.15, Gesamt: 8.16
Class-Init: 0.01, Boot: 0.15, Init: 0.002, Inhalt: 7.989, Sonstiges: 0.011, Gesamt: 8.162

Database Read:
Database::select (422), Timeline::getRawChannelItems (241), Timeline::getChannelItems (216), Network::content (236): 7.457

Log für Account B

2025-07-05 18:13:10	8.374	Timeline.php	422	getRawChannelItems	/*Database::select (422), Timeline::getRawChannelItems (241), Timeline::getChannelItems (216), Network::content (236) */ SELECT `uri-id`, `owner-id`, `comments`, `activities`, `received` FROM `post-searchindex-user-view` WHERE (NOT `uri-id` IN (SELECT `uri-id` FROM `post-tag` INNER JOIN `tag` ON `tag`.`id` = `post-tag`.`tid` WHERE `post-tag`.`type` = 1 AND `name` IN ('xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx', 'xxx')) AND (`language` = 'un' OR `language` = 'de' OR `language` = 'en') AND `uid` = xxxx AND (NOT `restricted` OR EXISTS(SELECT `id` FROM `post-user` WHERE `uid` = xxxx AND `uri-id` = `post-searchindex-user-view`.`uri-id`)) AND NOT EXISTS(SELECT `cid` FROM `user-contact` WHERE `uid` = xxxx AND `cid` = `post-searchindex-user-view`.`owner-id` AND (`ignored` OR `blocked` OR `collapsed` OR `is-blocked` OR `channel-frequency` = 1))) ORDER BY `received` DESC LIMIT 40

Die schlechte Performance auf Konto B war schleichend. Die Aufrufzeiten waren zuvor identisch zu Konto A. Erst brachen sie Zeitweise ein, normalisierten sich jedoch wieder. Nach Optimierung der DB Tabellen hat sich das jetzt leider dauerhaft verschlechtert und der Aufruf wird immer langsamer.

Die DB ist 145 GB groß.

Kennt jemand das Problem? Wie habt ihr es gelöst?

!Friendica Support

[‚loma]

Schreibe einen Kommentar

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)