簡體   English   中英

php_apc比memcached效率高多少?

[英]How much more efficient is php_apc than memcached?

將php_apc與symfony一起使用時會遇到各種問題,

如果提升不是那么重要,我將用memcached替換apc。

APC和memcached是不同的東西:


首先,APC扮演兩個角色:

  • 這是一個操作碼緩存(這意味着每個PHP頁面通常都需要較少的CPU,因為它刪除了“編譯”部分;我們首次啟用APC作為操作碼緩存時,Web服務器上的CPU負載從80%降到了40-50%)
  • 它也是非分布式數據緩存
    • 這意味着,如果您有多台服務器,則每台服務器都具有緩存的本地副本
    • 這也意味着您可以在緩存中存儲的數據量的限制非常低


對於memcached:

  • 這只是一個數據緩存
  • 它是分布式的
    • 即對內存緩存集群中的服務器數量沒有限制
    • 也就是說,您可以擁有的緩存數量沒有限制


您可以將APC或memcached用作數據緩存(這是我們在我當前正在處理的項目上所做的工作:有些數據緩存在APC中,另一些使用memcached)

但是,如果您想要一些操作碼緩存,則必須使用APC (或eAccelerator;但不確定是否維護得當)

請看這個:)

Memcached是分布式緩存系統,而APC是非分布式的-主要是操作碼緩存。

如果(且僅當)您有一個必須駐留在不同Web服務器上的Web應用程序(負載平衡),則必須使用內存緩存進行分布式緩存。 如果不是,則堅持使用APC及其緩存。

您應該始終使用APC所擁有的操作碼緩存(APC也將集成到php6 iirc中,所以為什么不立即開始使用它)。

您可以/應該將兩者用於不同的目的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM