【Node.js24.x】Object::brotliCompress()メソッドの使い方
brotliCompressメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
brotliCompressメソッドは、Brotliという先進的な圧縮アルゴリズムを用いて、入力されたデータを効率的に圧縮する処理を実行するメソッドです。これはNode.jsに標準で組み込まれているzlibモジュールの一部として提供されており、ウェブアプリケーションやネットワーク通信においてデータ転送量を削減し、パフォーマンスを向上させる目的で広く利用されます。
このメソッドは、Bufferオブジェクトや文字列などの形式で提供されたデータをBrotli形式で圧縮し、その結果を非同期に返します。非同期処理であるため、圧縮に時間がかかるような大きなデータであっても、メインスレッドをブロックすることなく処理を進めることができ、アプリケーション全体の応答性を保つことができます。
例えば、HTTPサーバーがクライアントに応答する前にレスポンスボディを圧縮したり、大量のログデータや一時ファイルをディスクに保存する際にファイルサイズを小さくするために活用されます。開発者は、コールバック関数を使用して圧縮完了時の処理を指定するか、Promiseベースの構文を用いて処理結果を待つことができます。これにより、データ圧縮機能を柔軟かつ効率的にアプリケーションに組み込むことが可能です。
構文(syntax)
1import { brotliCompress } from 'node:zlib'; 2import { Buffer } from 'node:buffer'; 3 4const inputBuffer = Buffer.from('This is a sample string to be compressed with Brotli.', 'utf8'); 5 6brotliCompress(inputBuffer) 7 .then(compressedBuffer => { 8 // 圧縮されたBufferオブジェクトがここに得られます 9 // console.log('Compressed data:', compressedBuffer); 10 }) 11 .catch(error => { 12 // 圧縮中にエラーが発生した場合 13 // console.error('Compression error:', error); 14 });
引数(parameters)
buffer, opts, callback
- buffer: Buffer: 圧縮するデータを含むBufferオブジェクト
- opts: object: 圧縮オプションを指定するオブジェクト (省略可能)
- callback: function: 圧縮処理完了後に実行されるコールバック関数
戻り値(return)
Promise<Buffer>
指定されたデータを Brotli 圧縮した結果を Buffer 型の Promise として返します。