KamoCRM

Deux recherches de traduction par lots que le planificateur faisait mal par ligne

Performancekamo-shared-library
Expédié
23 septembre 2026 à 13:37 UTC
Auteur
Kamo
Commite
cf061b2

les critères d'évaluations publiques de kbservice KB et son balayage de traduction-réaction à la fois KbArticleTranslationRepository une ligne à la fois. Production Les états de pg-stat ont montré deux coûts très différents de ceux-ci: - findRealTranslationLocales (nouveau): retourne la recherche sitemap/hreflang que indique une traduction réelle des lignes de rétrocession en anglais de TranslateService (une ligne peut maintenir l'anglais sous une clé locale lorsqu'il n'y a pas de fournisseur pour cette direction). Ce groupement planifie avec l'héritage heuristique de YugabyteDB modèle (pas de statistiques d'optimisation) et choisi une boucle cachée pour le JPQL joindre de kb-élément-traductions en kb-articles: un balayage index pour le uid list, puis un indice de ligne unique séparé en kb-articles pour chacune de ces lignes - 6 468 RPC de stockage pour un org de 308 articles, 11.9 s, pour joindre deux tables qui s'inscrivent ensemble en mémoire (6 000 dollars d'appels à 11 s chacun de la production). SQL natif avec un indice de HashJoin fourmille la jonction à la place (même technique que :: Vérifié avec EXPLAIN sur production: 11,9 s - 0,2 s, stable sous plan-cache-mode-force-generic-plan (forme du serveur de la forme JDBC côté serveur se prépare effectivement. - countGroupedByArticleUid (nouveau): le balayage de la traduction en dix minutes demandant à compterPar article - Utilisé une fois par article publié pour trouver ceux-ci Il a encore besoin d'appels locaux et 1,7 million d'appels en production, chaque sous-milliseconde seul. Un groupement groupé sur l'ensemble du lot est la même réponse; un uid l'absence du résultat comporte des lignes nulles. kbservice les deux dans (engagement séparé, son propre repo).

Tous les changements

Comme ce que tu vois expédier ?

Tout cela arrive dans votre espace de travail par lui-même. Commencez sur le plan gratuit et relisez cette page dans un mois.

Commencez gratuitement pour toujoursPrix de visualisation