Zend Framework的性能问题

ben*_*ail 3 php performance zend-framework

我在1个月前将Zend Framework添加到我的php项目中.我正在使用Zend_Measure和Zend_Locale将数字格式化为良好的语言环境.

我使用PHP 5.3与APC和Zend Framework 1.11.

从数据库导出原始数据时遇到了一个主要问题.排除可忽略不计的mysql查询时间,带有记录格式的php导出每1000条记录需要3.5秒.所有这些时间都花在了Zend_Locale_Format::toNumber().我怎样才能提高性能呢?

这个基准测试是在我自己的计算机上完成的(Macbook pro i5).在我们的生产服务器上,每1000条记录需要70秒!此服务器是2GB rackspaceCloud云服务器,带有centos,只运行我们的Web应用程序.

macbook和rackspace服务器性能之间有20个因素.我的macbook是如此强大吗?我不这么认为......


UPDATE

在进行一些分析之后,似乎出现了瓶颈Zend_Cache_Backend_File->_fileGetContents.它默认使用Zend_Cache_Backend_File.如何配置Zend Framework使用Zend_Cache_Backend_ApcZend_Cache_Backend_TwoLevels?它可能会改善性能......

Htb*_*baa 5

您是否设置了全局缓存Zend_Locale?检查此文档页面并滚动到底部.

另外,检查您的APC设置.我自己不使用APC,但是当缓存大小太小时,XCache会出现性能问题.这也可能是您的配置问题.


配置Zend_LocaleZend_Local_Format使用Zend_Locale::setCache($cache)和的缓存Zend_Locale_Format::setOptions(array('cache' => $adapter)).可以在手册中找到.