ネットワーク共有上のファイル システムを監視する NodeJS アプリケーションがあります。新しいファイル (XML ファイル) がこれらの共有の 1 つにドロップされると、NodeJS アプリケーションはそれを読み取って解析する必要があります。XML ファイルのサイズはすべて非常に小さく、通常は約 1k です。
fs.readFile(file, 'utf8', function (err, content) {
if (!err) parseXML(content, callback);
}
アプリのプロファイリングを行ったところ、1 つの小さな XML ファイルを読み取るのに平均 20 秒かかることがわかりました。これらのネットワーク共有は、ファイル システム ベースのワークフローの一部であり、これらの共有で他のアプリケーションが動作している可能性があることはわかっています。また、共有を所有するマシンでアプリケーションを実行することもできません。ファイルの読み取りパフォーマンスを向上させる他の方法はありますか? XML全体を解析する必要があるため、ストリームはオプションではないと思います。
アプリケーションとファイル システムはすべて Windows ベースです。
ありがとう!