在ExpressJS中如何caching工作的说明

我已经构build了一个ExpressJS服务器,对一组对象执行计算。 该数组被放置在请求的正文(POST请求)我已经注​​意到,我第一次启动服务器,并发送一个请求,我收到计算的预期结果。 现在,当我发送完全相同的请求到服务器(无需重新启动服务器),我收到了更快的响应。 我认为这是因为ExpressJS可能caching请求/响应。

我已经查看了ExpressJS文档,详细了解了如何在ExpressJS中执行caching,但找不到任何内容。 有人可以解释一下当ExpressJS服务器收到请求时caching是如何工作的,然后再收到完全相同的请求? 有没有办法完全禁用caching?

Express.js默认不执行任何caching。 您看到的效果可能是由于运行您的Node.js / Express.js代码的Javascript V8引擎中的JIT(Just In Time编译器)。

当启动你的服务器时,Javascript代码首先被编译成机器码。 在这一步中,JIT会对代码进行一些“优化”的优化,但是没有“完美的”优化。 在运行时(服务器运行时),JIT将使用各种漂亮的技巧进一步优化代码。 例如,更经常执行的代码(“热门代码”)将比仅很less执行的代码更优化。

一些参考资料的更多信息: