2012-07-01 195 views
3

我正在尋找一種方法來分享請求之間的PHP資源。首先,我想分享解析的XML。我有一些在readonly模式下使用的大型XML,目前我必須爲每個HTTP請求加載和解析它。PHP和請求之間共享資源

我讀過這樣的:http://php.net/manual/en/function.shm-put-var.php和其它共享內存API文檔,我知道有存儲資源共享內存中沒有直接的方法。這就是我在這裏問的原因。因此,我有XML,我以只讀模式(執行XPath請求)使用它,這個XML很大,我正在尋找一些方法來消除爲每個HTTP請求加載和解析它的需要。有關於此的任何想法或建議?

謝謝。

回答

3

如果您在服務器上啓用APC,看看apc_store

http://php.net/manual/de/function.apc-store.php

不像PHP許多其他機制,使用 apc_store(儲存變量)的請求之間將繼續存在(直到從緩存中刪除值 )

+0

另請參閱'shmop'。 http://stackoverflow.com/a/8631902/632951 – Pacerier

0

您可以使用會話這個http://www.tizag.com/phpT/phpsessions.php那他們是什麼打造。

隨着網站變得更加複雜,代碼必須支持 它。當你到一個階段,你的網站需要從一個網頁到另一個沿用戶傳遞 數據,它可能是時候開始考慮 如何使用PHP會話。

+0

你確定它的好主意,讓N-二兆XML的會議? :) –

0

也許你ca n使用memcache並將對象或文件保存在內存緩存中。然後任何Webservice都可以加載該文件並使用它。 Memcache速度非常快,您可以從許多Web服務器訪問它。