0

expressjsで静的HTMLページを表示したい。そうするための最速の方法は何ですか?現在、ファイルシステムにhtmlファイルが保存されており、使用しています。res.sendfile(home + "/public/file.xml")

sendfileはそれを行うための最速の方法ですか、それともある種のデータベースにファイルを保存する方が速いかもしれませんか?

ありがとう

4

2 に答える 2

2

データベースにファイルを保存しますか?ええと、そのような邪悪なことをしようとする人もいます。しかし、ポイントは何ですか?つまり、データベースエンジンはディスクからもファイルを読み取る必要があります。さらに、ロードプロセスを長くする他の多くのことを行う必要があります。

今、あなたはいくつかのことを混乱させているようです。ファイルの送信は、他の応答の送信と同じです。ある時点でバイナリデータを送信するres.send必要があるため、 (または他の形式の)使用を避けることはできません。もちろん、これはNode.jsについて話している場合です。これは、おそらく最高の静的ファイルサーバーであるnginxを介してファイルを提供することを検討している可能性があるためです。

最後にもう1つ、Node.JSを介してファイルを提供する場合は、ファイルをメモリにキャッシュすることを検討してください。もちろん、これは提供するファイルの数と大きさによって異なります。これは、データを保持し、リクエストがあるたびにデータを送信するグローバル変数を作成するのと同じくらい簡単です。これが、Node.JSで実現できる唯一の実際のパフォーマンス向上です。

于 2012-07-07T14:33:48.017 に答える
0

Expressは、静的ファイルの提供をサポートしていますapp.use(express.static(__dirname + '/public'));

于 2012-07-07T13:55:43.480 に答える