JSONAPI-Resources / JSONAPI-Resources/jsonapi-resources

Has many linkage performance improvement

Offen
#1,037 0 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Ruby
Sterne
2.3k
Forks
546
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Hi @lgebhardt,

We've encountered the issue with performance during include has many relations.

While we are including has many relations our resource is referencing to records_for(association_name) method which fetches all the relation data and then serializer while fetching links in relation (resource_serializer.rb:300) hits again the same has many relation which referrers again to records_for(association_name) code.

It seems to be redundant and it has an impact on the performance of the end-point.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, records_for(association_name) und den has-many-Pfad in resource_serializer.rb um Zeile 300 nachzuverfolgen. Bestätige, wo die enthaltene Relation abgerufen wird und wo die Link-Serialisierung sie erneut abruft; abgeschlossen ist die Aufgabe, wenn der redundante Abruf entfernt und die Performance des Endpunkts verbessert wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rails, ruby
Bereich
backend, performance
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.