我想用 expressjs 显示一个静态 HTML 页面。最快的方法是什么?目前我有一个 html 文件存储在文件系统中,我正在使用res.sendfile(home + "/public/file.xml")
sendfile 是最快的方法还是将文件存储在某种数据库中会更快?
谢谢
我想用 expressjs 显示一个静态 HTML 页面。最快的方法是什么?目前我有一个 html 文件存储在文件系统中,我正在使用res.sendfile(home + "/public/file.xml")
sendfile 是最快的方法还是将文件存储在某种数据库中会更快?
谢谢
将文件存储在数据库中?好吧,有些人试图做这种邪恶的事情。但重点是什么?我的意思是数据库引擎也必须从磁盘读取文件。此外,还必须做许多其他事情,使加载过程更长。
现在你似乎混淆了一些事情。发送文件与发送任何其他响应相同。在某些时候,您必须发送二进制数据,因此您无法避免使用res.send
(或任何其他形式)。当然,如果我们谈论的是 Node.js,因为您可能会考虑通过nginx提供文件,这可能是最好的静态文件服务器。
最后一件事:如果您仍想通过 Node.JS 提供文件,那么您可以考虑将它们缓存在内存中。这当然取决于您要服务的文件数量和大小。这就像创建保存数据并在有请求时发送数据的全局变量一样简单。这是您可以使用 Node.JS 实现的唯一真正的性能提升。
Express 支持静态文件服务:app.use(express.static(__dirname + '/public'));
.