我应该streamhtml文件,而不是只渲染?

我正在试验node.js / express.js,并认为pipe道html文件的请求,而不是只是渲染。

我希望能够获得更好的性能,并且html文件将会首次加载更快。

//instead of res.render('form',{title:'Login',userField:'Username',passField:'Password',photo: photo}); //I do var path = 'views/form.ejs'; var stream = fs.createReadStream(path); stream.pipe(res); This is actually about 10ms faster, even with a small file (385 bytes). I am developing so my files are still really 

小。

我发现唯一的答案是,我不能在响应像userFieldembeddedEJS数据:'用户名'

1-我在这种情况下使用pipe道吗?

2-有没有其他的优点和缺点?

3-我是否过度使用它? 我应该只使用渲染,因为差异很小,或与缓慢连接

大的HTML,pipe道实际上节省了一天?

谢谢

这10毫秒可能是实际渲染模板所花费的时间,当你按照自己的方式对模板进行pipe道传输时,这一步不会发生(它将原样发回模板,而不是渲染模板形成)。

至less使用EJS来渲染一个模板是一个同步操作:Express需要等待它完成才能发回响应,而且我不认为有可能以一种方式来stream式渲染渲染的EJS模板它比只调用res.render()更快。

不过,根据我的经验,这个速度非常快,而且有一些快速设置(如view cache ,在生产环境中启用,在开发环境中禁用)将有助于加快速度。