<p>如果要有相同的缓存文件,则必须确保在两台服务器上都有相同的输入。在</p>
<p><strong>您应该检查:</strong></p>
<ul>
<li>如果<code>{% compress %}...{% endcompress %}</code>中的代码在两台服务器上是相同的(如果同时部署到两台服务器,则应该是相同的)</li>
<li>如果两台服务器上的所有.css/.js文件都是相同的(如果同时部署到两台服务器上,则应该是相同的)</li>
<li>如果两台服务器上.css/.js文件的mtime(修改时间)相同(您的部署脚本可能会影响这些文件并设置当前日期)</li>
</ul>
<p>如果所有这些要求都得到满足,生成的文件应该是相同的(内容和名称)。在</p>
<p>您可以使用“stat”unix命令检查mtime。在</p>
<p>您问题的答案:</p>
<ul>
<li>django压缩器中缓存的目的是减少文件系统的读取。在</li>
<li>生成的包含组合代码的文件仅存储在文件系统中。在</li>
</ul>
<p><strong>编辑:</strong></p>
<p>我在我的一个网站上查过负载均衡器。对于.css文件,我有不同的文件名,但是对于.js,它们是相同的。在</p>
<p>对于.css文件,我使用预处理器(http://lesscss.org/),所以它会影响mtime。在</p>
<p><strong>编辑(主题开发后):</strong></p>
<p><strong>缓存中有什么?</strong></p>
<p>由于<a href="http://django_compressor.readthedocs.org/en/latest/behind-the-scenes/" rel="nofollow">documentation</a>django compressor在缓存中存储了两个不同的内容:</p>
<ul>
<li>缓存文件的mtime(每压缩一次检查一次)</li>
<li><p>完整生成代码,即:</p>
<p><;link rel=“stylesheet”href=“http://cdn.inprl.pl/CACHE/css/117f97d818b8.css“type=”text/css“>;</p></li>
</ul>
<p>由于以下缓存使用情况,django压缩器将对文件系统的读取次数减少到0。这对于页面速度至关重要,因为从内存读取比从文件系统读取快数百倍。而且文件系统常常是瓶颈。在</p>
<p><strong>如何将其存储在缓存中?</strong></p>
<p>django compress使用生成的密钥在缓存中存储代码。密钥生成自:</p>
<ul>
<li><code>{% compress %}...{% endcompress %}</code>中的代码</li>
<li><code>{% compress %}...{% endcompress %}</code>中提到的文件的mtime</li>
</ul>
<p>因此,如果您想获得一致的响应,那么所有服务器上的响应必须相同。在</p>
<p><strong>附言。</strong></p>
<p>请检查您的服务器上的约束(如mtime),如果它们匹配,请在此处发布信息。在</p>
<p>我将在我的网站上修复同样的问题可能下个星期,我会张贴更多的细节。在</p>