关于symfony性能
Hi,洪大师:
有个关于symfony的性能问题想请教一下,我们目前用symfony做了一个项目,通过对discuz做的一个依赖注入来实现插件的开发,实现方式是在discuz加载配置的时候载入了symfony并重写了 discuz的配置。这个就导致了我们现在开发的这个产品的性能上不去,目前测tps (每秒事务数)也就是 100左右,discuz原生的环境首页tps在500左右,在symfony框架下输出phpinfo在我们的测试环境下tps只有300左右 。
目前symfony部分已经做的优化:
在web/app.php中开启apc缓存加载:
$loader= require_once __DIR__.'/../app/bootstrap.php.cache';
$apcLoader = new ApcClassLoader(sha1(__FILE__), $loader);
在app/config/config.yml中开启了doctrine的查询缓存,将doctrein的metadata_cache_driver,query_cache_driver,result_cache_driver,设置为redis缓存
在将symfony设置为prod模式.ps:这一块可能有点问题,因为我在转为prod模式的时候出现Segmentation fault 提示,但是我看了额app/cache的目录下 prod的文件夹也生成了。去google了好久也没找到问题的所在,在源码中抓 也没抓到,好奇怪。
在composer中的自动加载也做了优化 composer dump-autoload --optimize ,优化了生成了一个自动加载的数组。
大师,你看看还有什么地方可以再做优化的么?
以上的压测数据是单台压测的结果。
我们的项目的PV大概有1400W。架构里面有3台php机,前面2台代理机,3台mysql(1主2从),2台redis(主从)所有现在压测的结果是不符合要求的。
谢谢了
By 山鸡的机