2010-11-17 32 views
3

對於一些人來說,這可能是一個微不足道的問題,但我自己還找不到答案。APC是否適合高度動態的PHP網站?

如果我理解正確,APC會做兩件事。將PHP頁面保存爲字節碼,以便更快地交付。它也可以緩存數據,以便我們可以更快地查詢它們。

我對字節碼功能感興趣,如果我理解正確的話,默認情況下是這樣。我不需要修改我的代碼就可以工作。

我的問題是這樣的:我們的網站是一個社交網站,我們的PHP頁面是高度動態的。每次他們被叫時,他們都會受到很多因素的影響。

我們仍然可以從使用APC中獲益嗎?

感謝, Haluk

回答

3

是的,這正是APC的偉大工程(雖然它有利於所有類型的網頁)的情況類型。它本質上是PHP代碼的「編譯器」。

除非後面的PHP代碼更改頻率比頁面加載更頻繁(我不認爲這會發生),否則APC將對您有所幫助。

對於任何靜態頁面(或頁面的靜態部分),您可能需要考慮將輸出緩存到系統上的文件。這樣,當你需要顯示該組件時,不用運行PHP代碼,只需提供緩存的HTML。

+0

好吧,我想我開始明白了。這類似於將Java保存在字節碼中。好的。現在我明白了。 – Haluk 2010-11-17 13:53:12

1

它不會工作,以及爲您的網站的動態部分,除非你分別緩存,但你會從字節碼緩存中受益,而無需更改代碼

進一步閱讀

+0

上面引用的「瞭解APC」文章說:「如果您的應用程序負載很重,那麼APC是一個不錯的選擇。」我不完全明白這一點。什麼是小應用程序?這是指我們擁有的PHP頁面數量,在我們的例子中,我們有幾百個PHP頁面。我會認爲它很小。考慮到我們正在一臺服務器上工作,並且我們不需要分佈式緩存,並且APC更易於維護。我認爲APC非常適合我們。實際上,我開始思考爲什麼APC不是PHP的默認選項,如果這是好的。 – Haluk 2010-11-17 15:16:13

+0

@Haluk APC將被包含在PHP核心的PHP.next中。既然現在安裝它並不是什麼大功夫,我建議你只需用ab或圍攻等工具嘗試一下,看看你的應用是否從中受益。我預測它會。 – Gordon 2010-11-17 15:24:52