我有app.html
页面,包含许多咖啡脚本(58个文件)。
我用django-compressor编译它们:
{% compress js %}
<script type="text/coffeescript" src="/static/scripts/commons/commons.coffee"></script>
<script type="text/coffeescript" src="/static/scripts/app/model/Storage.coffee"></script>
<script type="text/coffeescript" src="/static/scripts/app/model/Unit.coffee"></script>
....
{% endcompress %}
所有内容都可以编译并运行,但页面响应需要15秒。我认为第一次请求应该没问题(应该编译咖啡),但是在第二次,第三次和所有进一步的请求上需要15秒。
输出始终相同:
<script type="text/javascript" src="/static/CACHE/js/commons.33f0b9628e28.js"></script>
<script type="text/javascript" src="/static/CACHE/js/Storage.924e88456824.js"></script>
<script type="text/javascript" src="/static/CACHE/js/Unit.0fdebfecb96b.js"></script>
....
我没有更改文件,我只是刷新页面。
似乎django-compressor在每个请求上重新编译所有文件(但编译的js文件的名称不会改变,这很奇怪)。
任何方式我都可以加速django-compressor?
P.S。
manage.py runserver
在本地运行django。DEBUG = True
(我的DEBUG选项在settings.py中设置为True)答案 0 :(得分:2)
django-compressor现在有一个用于缓存预编译器和加速咖啡编译的系统,只编译已更改的文件。这加快了开发响应时间。
https://github.com/django-compressor/django-compressor/pull/650
只需添加压缩机设置:
COMPRESS_CACHEABLE_PRECOMPILERS = (
'text/coffeescript',
)
答案 1 :(得分:1)
我猜你已经设置了这个COMPRESS_ENABLED = True
。设置为False。
另请查看COMPRESS_OFFLINE,以便您可以离线压缩静态:
$ python manage.py compress
这也会删除缓存键。顺便检查一下COMPRESS_CACHE_BACKEND。