【Node.js24.x】Stream::getDefaultHighWaterMark()メソッドの使い方
getDefaultHighWaterMarkメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
getDefaultHighWaterMarkメソッドは、Node.jsのStreamモジュールにおいて、ストリームがデータを一時的に保持できる内部バッファのデフォルト最大容量(highWaterMark)を取得するメソッドです。highWaterMarkは、ストリームが内部バッファに保持するデータの最大量をバイト単位で示す設定値であり、これによりデータの読み書きの速度を調整し、システムのメモリ使用量を管理する上で非常に重要な役割を果たします。
例えば、読み込みストリーム(Readable Stream)では、この値を超えてデータがバッファに蓄積されないように、データソースからの読み込みペースを調整します。一方、書き込みストリーム(Writable Stream)では、書き込み処理が遅れている場合に、この値が書き込みを一時的に停止し、メモリの過剰な消費を防ぐ目安となります。
このgetDefaultHighWaterMarkメソッドは、ストリームを初期化する際にhighWaterMarkオプションを明示的に指定しなかった場合に適用される、標準のhighWaterMark値を確認するために使用されます。通常、Node.jsの読み込みストリームおよび書き込みストリームのデフォルトhighWaterMarkは16384バイト(16KB)に設定されており、このメソッドはその標準のデフォルト値を返します。
システム開発において、ストリームベースの処理のパフォーマンスを評価したり、デバッグを行う際には、このデフォルト設定値を把握しておくことが役立ちます。特に、大量のデータを扱うアプリケーションでは、highWaterMarkの値がシステム全体のメモリ効率やデータフローに大きく影響するため、その基準となるデフォルト値を知ることは、効率的なアプリケーション設計の基盤となります。このメソッドは、個別のストリームインスタンスに設定されたhighWaterMarkの値ではなく、Node.jsのストリームフレームワークが提供する共通のデフォルト値を返します。
構文(syntax)
1import { getDefaultHighWaterMark, Readable } from 'node:stream'; 2 3const defaultHighWaterMarkValue = getDefaultHighWaterMark(Readable);
引数(parameters)
引数なし
引数はありません
戻り値(return)
number
このメソッドは、ストリームのデフォルトのhighWaterMark値を示す数値を返します。