modelcontextprotocol / modelcontextprotocol/java-sdk

Optimization - avoid unnecessary payload copy when deserializing

Offen
#156 12 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

enhancement P2 ready for work
Vorherrschende Sprache
Java
Sterne
3.7k
Forks
1.1k
Ø Merge
1 T. 15 Std.
Gemergte PRs (30 T.)
9

Beschreibung

This issue suggests creating a JSON deserialization variant that consumes an InputStream without the need for a String copy of the HTTP request payload, reducing the GC pressure and improving overall performance.

Expected Behavior

Efficient correct HTTP
bad user data should return 400

Current Behavior

Bad data returns 5xx
Extrac copies of JSON messages are created in memory

Context

More memory pressure,
harder to debug


(edit by @chemicL)
The PR addressing this is #157

Beitragsleitfaden

Beitragsleitfaden öffnen

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 mit der Prüfung von PR #157, den das Issue als Bearbeitung dieser Aufgabe identifiziert, und verfolge den HTTP-Deserialisierungs-Einstiegspunkt, den er ändert. Erledigt bedeutet, die Deserialisierung auf Basis von InputStream ohne unnötige String-Kopien zu unterstützen und bei fehlerhaften Benutzerdaten 400 statt 5xx zurückzugeben; überprüfe das relevante Verhalten mit den Tests des PRs.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
api, backend
Issue-Typ
Refactoring
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
20/100

Neue Issues direkt in Ihr Postfach

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