Heim > Artikel > Web-Frontend > Was ist ein Pufferobjekt in node.js? Was ist das Nutzungsszenario?
Dieser Artikel stellt Ihnen das Buffer-Objekt in node.js vor und zeigt Ihnen, welche Verwendungsszenarien das Buffer-Objekt hat und welche Vorteile es hat.
Pufferobjekt ist das Kernmodul von Node. Es ist auch eine häufig gestellte Testfrage. Wenn Sie sich nicht eingehend damit befassen, können Sie es einfach wie ich verwenden und stellt einige Fragen: Nicht mehr. Zu diesem Zeitpunkt konnte ich jedenfalls nur antworten: Das Buffer-Modul wird im aktuellen Geschäft selten verwendet, aber das Buffer-Objekt kann einige Geschäftsfunktionen und die Leistung effektiv optimieren, die durch die String-Übertragung nicht erfüllt werden können. [Empfohlenes Lernen: „nodejs-Tutorial“]
Lassen Sie uns also heute etwas über das Buffer-Objekt lernen.
Pufferobjekt
Das Pufferobjekt wird zur Darstellung einer Bytesequenz fester Länge verwendet.
Jedes Element im Pufferobjekt ist eine zweistellige Hexadezimalzahl (d. h. ein Wert von 0 bis 255).
Wenn der einem Element des Puffers zugewiesene Wert kleiner als 0 ist, werden 256 nacheinander hinzugefügt, bis a Wenn der Wert des Bereichs größer als 255 ist, subtrahieren Sie nacheinander 256, bis der Wert im Bereich von 0 bis 255 erhalten wird. Wenn es sich um eine Dezimalzahl handelt, wird er direkt gerundet.
Nutzungsszenarien
Kann zur Verarbeitung großer Mengen binärer Daten verwendet werdenVorteile
Während Netzwerkübertragung , die Leistung wird verbessertDie meisten Netzwerkübertragungen verwenden Zeichenfolgen, die zwangsläufig in Puffer umgewandelt werden müssen, um Daten im Binärformat zu übertragen. Wenn wir es vor der Übertragung direkt in einen Puffer umwandeln, ist während des Übertragungsprozesses keine zusätzliche Konvertierung erforderlich, und Verluste werden vermieden, was die Leistung verbessert.
Das Folgende ist ein Leistungstest durch ab und das Ergebnis der Initiierung von 200 gleichzeitigen Client-Anfragen. Die QPS-Verbesserung ist nicht sehr hoch, aber es gibt immer noch eine leichte Verbesserung. Sie können den Code kopieren und ausführen, um zu sehen, ob das Ergebnis stimmt ist das gleiche wie meins
// 创建一个长度为 10、以零填充的 Buffer。 const buf1 = Buffer.alloc(10); // 创建一个长度为 10 的 Buffer, // 其中全部填充了值为 `1` 的字节。 const buf2 = Buffer.alloc(10, 1); var str="hello Jasen"; var buf = new Buffer.from(str,'utf-8'); console.log(buf); //输出:<Buffer 68 65 6c 6c 6f 20 4a 61 73 65 6e>Stream ist auch das Kernmodul von Node. Stream ist eine Abstraktion von Eingabe- und Ausgabegeräten einer geordneten Byte-Datenübertragung mit einem Startpunkt und einem Endpunkt.
Es gibt vier grundlegende Stream-Typen in Node.js:
Writable – ein Stream, der Daten schreiben kann (z. B. fs.createWriteStream())
Readable – ein Stream, der Daten lesen kann (z. B. fs.createReadStream( ) ).
Duplex
Teilweises Hoch- und Herunterladen von Dateien. Wenn Sie beispielsweise einen Film herunterladen, können Sie ihn während des Herunterladens ansehen, eine solche Implementierung Verfahren. Ursprüngliche Adresse: https://juejin.cn/post/6955490895131066382
Weitere Programmierkenntnisse finden Sie unter:Einführung in die Programmierung! !
Das obige ist der detaillierte Inhalt vonWas ist ein Pufferobjekt in node.js? Was ist das Nutzungsszenario?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!