2011-10-16 64 views
0

我正在將相當數量的數據存儲在$ _SESSION變量中。我這樣做,所以我不需要繼續訪問數據庫。

我應該擔心共享服務器上的內存問題嗎?

服務器可以處理存儲在$ _SESSION變量中的大量數據嗎?

回答

6

我應該擔心共享服務器上的內存問題嗎?

是 - 會話數據在每個請求中都加載到腳本的內存中。因此,您有可能違反個人每腳本內存限制。即使你沒有達到極限,這也是非常低效的。

從數據庫按需訪問數據是更好。

+0

謝謝 - 將查看每個頁面請求的請求數據 – HGPB

3

..除了什麼@Pekka寫道:

PHP會話的不是替代的緩存解決方案!

您應該調查您的服務器是否有APC可用。你應該在從數據庫訪問信息的頂層使用它(假設你實際上有一個OO代碼)。

+0

好點,看到這可能是OP想要做的 –

+0

我確實有OO方法。另一方面,數據不一定用於緩存目的,而僅僅是用於存儲可以添加和去除的數據的資源。我可以輕鬆地避免將它存儲在會話中,而是在操作時發出數據庫請求。 – HGPB