Memory management Zend_缓存未序列化-内存占用?

Memory management Zend_缓存未序列化-内存占用?,memory-management,serialization,zend-cache,Memory Management,Serialization,Zend Cache,我已经设置了Zend_Db_Table_Abstract,以便它使用元数据缓存,然后使用xhprof分析它使用了多少内存 结果显示,从_setupMetadata到Zend_Cache_Core::load的34个调用占用了7mb内存,其中大部分是通过调用unserialize来使用的 元数据缓存的配置为: resources.cachemanager.db_metadata.frontend.name = Core resources.cachemanager.db_metadata.fron

我已经设置了Zend_Db_Table_Abstract,以便它使用元数据缓存,然后使用xhprof分析它使用了多少内存

结果显示,从_setupMetadata到Zend_Cache_Core::load的34个调用占用了7mb内存,其中大部分是通过调用unserialize来使用的

元数据缓存的配置为:

resources.cachemanager.db_metadata.frontend.name = Core
resources.cachemanager.db_metadata.frontend.options.automatic_serialization = true
resources.cachemanager.db_metadata.frontend.options.lifetime = null

resources.cachemanager.db_metadata.backend.name = File
resources.cachemanager.db_metadata.backend.options.cache_dir = APPLICATION_PATH "/../data/cache/db_metadata"

这是一个常见问题,还是我遗漏了什么?

因为您正在序列化对象,所以需要占用大量内存。 尤其是Zend_Db_*对象

在这里,我们遇到了同样的问题,我们最终让您拥有自己的缓存系统

您可以做的是定义sleep/wakeup,以便从Zend_Db_Table_Row_Abstract中删除所有不必要的ivar,但必须确保不破坏类不变量

祝你好运

它似乎使用了的任何实例。有很多可用的。从记忆角度看,他们的表现更好吗?