在應用程序代碼中緩存數據通常是一個好主意,原因很多。我們一直在包括ColdFusion,.NET和PHP在內的共享環境中安靜地執行此操作。但是,由於我們與組織中的許多其他開發組共享此環境,因此我們(或我們的客戶)欣賞的停機時間明顯更多。在集羣環境中緩存
因此,我們的網站管理員正在轉向實施新的環境。在這種環境下,他們在當前的Dev和Prod環境之間添加QA級別。另外,爲了增加正常運行時間,它們都是QA和Prod級別的集羣機器。
這一切都很好,原因很多。我發現問題的一個領域是緩存。將有兩個(或更多,取決於節點數量)緩存集。正如你可以想象的那樣,這會產生以下潛在問題。緩存在節點A和B上是相同的。用戶1更新數據,從而在節點A上更新緩存。用戶2來查詢數據但在節點B上,因此得到舊數據。
他們有關如何處理這個問題的最佳實踐?
在我的代碼中可以進行任何類型的更改嗎?
是否有可以實施的服務器設置?
緩存的要點是,我們不必對數據庫進行不必要的調用。因此,我不認爲在這種情況下使用CFWDDX和數據庫存儲會很好。 – Jason 2009-12-03 16:19:54
只要你不需要共享ColdFusion以外的緩存數據(對.net或php等),那麼我認爲Steven建議使用ColdFusion的內置集羣是你最好的選擇。它的烘烤和完全支持 - 你還能要求什麼? – 2009-12-03 16:32:55
我正在尋找適用於不同語言的解決方案。這*可能解決我們在coldfusion中的問題,但不能解決其他地區的問題。 – Jason 2009-12-03 16:45:40