pl: Schlanke Alternative zu multipart/form-data

Beitrag lesen

problematische Seite

Moin,

interessant. An welchen Stellen haben deine Messungen welchen Performancegewinn ergeben?

Im Browser stehen die Erzeugung eines FormData-Objekts oder eines Blob-Objekts zur Disposition. Da dürfte wohl hinsichtlich der Performance kaum ein Unterschied bestehen.

Der mit FormData erzeugte UploadStream ist nur unwesentlich länger als die als Blob gesendete Binary. Auch hier gibt es wohl kaum Unterschiede die exakt erfasst werden könnten.

Interessant wird es jedoch serverseitig. So ist das Parsen eines FormData-Body sehr CPU-lastig und speicherfressend, je nachdem wie der Parser arbeitet. Je nach Parser werden auch temporäre Dateien angelegt die ein Sicherheitsrisiko darstellen können.

Der Hauptgewinn gegenüber multipart/form-data ergibt sich somit daraus daß der Upload-Stream nicht geparst werden muss. Der serverseitige Prozess begnügt sich damit, die Binary nur zu lesen anhand der mitgelieferten Längenangaben wobei mit dem Lesen unmittelbar begonnen werden kann (streaming).

MfG