【Node.js24.x】Object::brotliCompressSync()メソッドの使い方
brotliCompressSyncメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
brotliCompressSyncメソッドは、Node.jsのzlibモジュールに属し、指定されたデータをBrotli圧縮アルゴリズムを用いて同期的に圧縮するメソッドです。BrotliはGoogleが開発したオープンソースのデータ圧縮アルゴリズムで、特にウェブコンテンツの圧縮において高い圧縮率と良好なパフォーマンスを発揮することで知られています。
このメソッドを使用することで、ファイルサイズを小さくしたり、ネットワーク経由で送信するデータの量を削減したりすることが可能になります。例えば、ウェブサーバーでコンテンツをクライアントに送信する前にBrotliで圧縮することで、転送時間を短縮し、ユーザーエクスペリエンスを向上させることができます。
入力として、Buffer、TypedArray、DataView、またはstring形式のデータを受け取り、圧縮されたデータはBuffer形式で返されます。圧縮の品質やメモリ使用量などを調整するためのオプションオブジェクトを第二引数に指定することも可能です。
注意点として、brotliCompressSyncメソッドは同期処理であるため、圧縮が完了するまでNode.jsのイベントループがブロックされます。したがって、非常に大きなデータや複数のファイルを連続して圧縮する場合など、時間がかかる処理には向いていません。そのようなケースでは、非同期版のbrotliCompressメソッドや、ストリームAPIを利用するcreateBrotliCompressを使用することが推奨されます。このメソッドは、小規模なデータや起動時の初期処理など、同期処理が許容される場面での利用に適しています。
構文(syntax)
1const zlib = require('node:zlib'); 2const input = Buffer.from('This is a string to be compressed using Brotli.'); 3const compressedData = zlib.brotliCompressSync(input);
引数(parameters)
buffer, options
- buffer: Buffer | TypedArray | DataView | string: 圧縮するデータ
- options: BrotliCompressSyncOptions: 圧縮オプションを指定するオブジェクト
戻り値(return)
Buffer
brotliCompressSync メソッドは、入力データを Brotli 形式で同期的に圧縮した結果を Buffer オブジェクトとして返します。