我在負載平衡器後面有兩臺服務器。每臺服務器都運行一個memcached服務器,並且設置文件(兩臺服務器上的設置文件相同)都定義了它們(簡而言之:共享緩存)。如何在負載均衡器後面使用django-compressor?
我要生成的文件的路徑是相同的服務器上,以便客戶端不必下載不止一次。
對於我來說,我需要了解django壓縮機的工作原理。
- django壓縮機中緩存的實際用途是什麼?
- 文件內容是否存儲在緩存和文件系統中?
- 如果是這樣,這恰好第一?
- 我希望我提出正確的問題在這裏。隨意添加一些。
比this更詳細和更好構建的序列將是非常有用的。
編輯
- 由於服務器都共享一個memcached服務器,應該怎麼設置
COMPRESS_CACHE_KEY_FUNCTION = 'compressor.cache.socket_cachekey'
(見develop branch)或不使用相同的緩存鍵有助於我有相同的文件名的點? - 我明白這一點,mtime是從源js/css文件收集,以確定它們是否可能已經改變,並且應該從它們中生成新文件。正確?
- 這可能不會發生在每一個負載。它何時發生?
如果我是你並且想知道關於django-compressor的這些細節,我會閱讀代碼(django-compressor code)。 –
我已經做到了。但是,儘管我能理解大部分代碼參與其中,但如果你明白我的意思,我就不會理解它的大局。所以我想:也許有人比我更瞭解django-compressor,並且可以向我解釋它是如何工作的,以便我能更好地理解在查看代碼時應該如何做。 – demux