2012-12-27 107 views
2

僅僅通過使用並啓用它,整個php文件是否添加到apc?Php apc操作碼緩存 - 緩存整個文件與變量

我明白提取和存儲如何與變量一起工作,但何時應該使用它?整個文件的緩存是否自動完成?如果一個變量被緩存 - 它應該只是一個全局變量還是一個用戶特定的變量?

+0

讓你的分析器指導你決定緩存什麼。否則,你會浪費程序員時間猜測什麼是值得的。 – goat

回答

5

一般來說,你應該緩存數據庫響應不需要經常更新,但經常訪問。這些數據不一定來自數據庫 - 也可能來自文件或任何類型的數據存儲。關鍵是要從緩存/內存中提供最流行的東西,以避免代價高昂的i/o

Take a look at this answer對Opcode緩存的一個很好的解釋。操作碼緩存基本上只是將您的PHP文件存儲在內存中,以便在運行時更快地解析它。

APC會自動運行,並檢測文件的更改以查看是否需要重新緩存。從上面的回答引用:

的apc.stat選項定義APC是否應該檢查文件的最後修改日期/時間使用的操作碼從RAM之間作出選擇,或重新編譯的文件,如果是更最近在RAM中的操作碼。

另外,回答你全球 VS 用戶特定問題。這一切都取決於曝光,你應該緩存任何大量的曝光。但通常用戶特定的數據比全球數據的暴露程度要低。