我們現在使用Redis作爲我們的Django應用程序的內存緩存(我們以前使用過memcached,性能沒有太大的區別,因爲我們使用Redis,因爲磁盤轉儲功能)。Django緩存性能
問題是,在我看來,Django緩存的性能很糟糕。我們認爲,有102個緩存命中(沒有丟失),它需要81毫秒(只是緩存部分,用Django調試工具欄測量)。在我看來 - 這是非常多的時間。我知道,對數據庫進行查詢將花費10倍的時間(甚至100倍),但即使這樣,緩存性能也不好。
我們在不同的主機上運行Redis(和之前的memcached),在本地網絡中與其他服務器連接。
有什麼辦法可以調整Django中的緩存性能嗎?
難道這81毫秒花費從緩存中取出東西嗎?還是包含其他內容?你在緩存什麼? HTML片段還是酸洗複雜的對象或模型實例? –
如果81 ms是完整請求,直到您在遠程主機上收到響應,那麼時間確實相當不錯。:) –
81毫秒僅用於獲取緩存內容。完整請求(緩存,不可緩存的SQL,模板解析等)大約需要250-300 ms。我們緩存不同的東西,從小塊文本(多數)到更大的HTML塊。 – ThomK