在一個相當大的遺留項目中,我將幾個毛茸茸的模塊重構爲Moose類。這些模塊中的每一個都需要數據庫訪問(懶惰)獲取其屬性。由於這些對象的使用相當繁重,我想減少冗餘請求的數量,例如對於未更改的數據。如何正確減少使用mod_perl的冗餘請求數量?
現在,我該如何做到這一點?我有幾個選擇:
- 通過角色實現我的穆斯類緩存將它們存儲在
memcached
有5-10分鐘後(可能不是太困難,但棘手的懶屬性)更新: KiokuDB也許可以幫助這裏,不得不讀了關於屬性 - 遷移到
DBIx::Class
(需反正做),並在這個層面上實現緩存(DBIC可能會採取最痛苦的離開只是本身) - 某種方式使我的對象堅持在mod_perl過程中(不知道如何做到這一點:()
你會如何做到這一點,你認爲什麼是一種理智的方式?緩存數據首選對象還是ORM級別?