会话存储在每个http请求上获取和设置?

时间:2013-02-17 22:13:42

标签: node.js session redis

我使用带有https://github.com/visionmedia/connect-redis的node.js将会话变量存储在redis中。

我运行redis-cli monitor并注意到在单页加载时,有3组getsetex命令正在执行。这3套来自我的网页加载(favicon.ico/index.css)上发出的3个http请求。

我的问题:redis getsetex在每个http请求上运行是否正常?每对包含相同的数据。

1 个答案:

答案 0 :(得分:2)

您看到的3 HTTP获取对于Web应用程序是正常的。

您可以在favicon.ico上设置很长的截止日期,以便浏览器只请求一次。

对于静态资源(即CSS,JS,图像),您可以执行相同操作或将它们放在不同的域(或子域)中

请注意,如果您在CSS / JS文件上放置了很长的过期日期,浏览器将不会再次请求它,您可能会遇到奇怪的“问题”,其中您对CSS / JS文件进行了更改并且浏览器可能无法获取更新的文件。这是许多网站“版本化”他们的CSS文件(例如styles-2013-02-17.css)的原因之一,这样他们可以在进行更改时使用不同的文件名。