KamoCRM

Stoppen Sie sehnsüchtig LeadVendorProduct's Org-Kette für eine Single-id-Lesung

Performancekamo-shared-library
Verschifft
23. September 2026 um 14:39 UTC
Autor
Kamo
Ausschuss
3677d12

findById() auf LeadVendorProduct zieht seinen Standard-EAGER-Anbieter, der selbst eifrig-Fegt seine eigene org UND sein Markt (die eifrig-fetches ITS org wieder) - und Organisation ist @Inheritance(JOINED), so dass jeder dieser Hops auch Außen-Joins ORG_MTG zu lösen polymorphe Untertyp. Gemessen in der Produktion pg_stat_statements: ein 8-Wege-Zusammen, . 780K Anrufe an 10-21ms (ca. 3 Stunden kumulative DB-Zeit), fast ausschließlich Single-id-Lookups (wo id=$1), nicht eine Batchfähiges N+1 - jeder Anrufer hat bereits eine ID und liest bei den meisten Anbietern + eigene Skalarfelder. Fügt zwei schlanke LeadVendorProductRepository-Methoden hinzu und schaltet jeden findById() Anrufer in Kamo-Shared-Bibliothek + Security zu dem, das entspricht, was es tatsächlich liest: - findIsEmptyCreditFfaById: eine skalare JPQL-Projektion, überhaupt keine Verbindungen. - findByIdWithVendor: ein @EntityGraph beschränkt auf "vendor" (eine einfache, nicht-JOINED Entität) . vendor.org und vendor.market kommen zurück als uninitialisierte Proxys, deren id ist immer noch lesbar ohne zusätzliche Abfrage, die alle Org-Eigentum Kontrollen in diesen Anrufern jemals benötigt. Bewusst KEIN @EntityGraph in vendor.org oder vendor.market.organization: Beide sind Organisation und eine Entitätsgrafik, die weitere Assoziationen von einer JOINED-Erbeeinheit abzieht ist die genaue Form, die in der Produktion auf Hibernate 6.2.13 (fehlende AUS-Klausel) genommen /führt Eintrag für die Wurzeltabelle . siehe LeadAssigneeRef). Die beiden Anrufer, die wirklich brauchen den Markt Organisation ************ in Security Service) laden LeadMarket als zweite, normale Abfrage statt - die gleiche Split, die diese Codebasis bereits für TeamMember verwendet. JSON-Formen sind unverändert; nur welche Spalten aus der Datenbank ausgelesen werden, geändert.

Alle Änderungen

Wie, was Sie sehen Versand?

Alles kommt in Ihrem Arbeitsbereich für sich. Starten Sie mit dem kostenlosen Plan und lesen Sie diese Seite in einem Monat wieder.

Free Forever startenPreisgestaltung anzeigen