加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php – Symfony 2性能优化

发布时间:2020-05-31 00:41:15 所属栏目:PHP 来源:互联网
导读:我们正在寻找一个 PHP框架,以便日后使用,目前正在使用Symfony 2进行测试.为此,我们重新设计了我们的API,并将其作为Symfony的一个捆绑包实现.事实证明,Symfony似乎很慢 – 实际上比我们的老(甚至设计不佳)的系统慢得多. 我们尝试通过缓存字节码来优化性能(对此

我们正在寻找一个 PHP框架,以便日后使用,目前正在使用Symfony 2进行测试.为此,我们重新设计了我们的API,并将其作为Symfony的一个捆绑包实现.事实证明,Symfony似乎很慢 – 实际上比我们的老(甚至设计不佳)的系统慢得多.

我们尝试通过缓存字节码来优化性能(对此使用APC).虽然我们注意到了性能的巨大改善(之前:加载API约3秒;之后:平均0.6秒(比没有APC的旧系统还要慢0.5秒)),我们很兴奋 – 但仍然对于如此简单的任务的高加载时间,如从一个几乎空的数据库中获取一个结果,并不是非常满意.

我不知道,但我可以想象这是由于Symfony自动加载所有类,即使不需要特定的包.

现在,在我们深入六Symphony之前,我们希望进一步的优化,可能是排除不必要的组件在一个特定的捆绑包中的一种方式,因为我个人认为这会有很大的不同.

我会感谢任何有关如何进一步提高性能,使用Symfony的经验报告或可能有助于我们了解框架的任何想法.

编辑:

有关测试环境的一些信息:

>操作系统:Ubuntu 12.04.4 LTS(GNU / Linux 3.8.0-38-generic x86_64)
> Apache版本:Apache / 2.2.22(Ubuntu)
> PHP版本:5.3.10-1ubuntu3.13
>相当大的PHP扩展:apc

此外,所有测试都是在我们系统的本地副本上完成的,因此可能会排除网络问题.

这些点可以优化您的应用程序性能:

>升级PHP. PHP 5.3和PHP 5.4之间的性能提升非常高. PHP 5.5会更好,但它不支持所有发行版,如Debian 7.
> NGINX比Apache快,配置更简单.
>使用PHP-FPM与NGINX是一个很好的组合.您还可以使用HHVM运行您的PHP,平均比PHP-FPM快2倍,前提是您用Grunt替换Symfony / Assetic.注意:在安全部署之前,HHVM需要更多的预防和测试.您可以按照这两篇文章(法文):JoliCode和Big Brains Company
>不支持PHP APC扩展.我认为XCache,Memcached或Redis是更好的,它们也是最受支持的.对于PHP> = 5.5,APCu可用作APC的替代品.

此外,您可以阅读几篇关于Symfony2优化的文章,并提供Twig基准测试.

PHP文章:

> Script high-performance法文
> Comparison of PHP 5.3 and PHP 5.6 performance法文
> Check this article to apprehend the PHP optimisation法文
> Google’s recommendations for optimising PHP applications英文
> 10 best pratices to optimise PHP英文

Symfony2和Twig文章:

> Symfony documentation gives a few tips how to build a performant application英文
> Template optimisation法文
> Twig include optimisation法文
> Use @Cache annotation requests英文
> Symfony2: Good practices法文
>限制不必要的捆绑包的使用
> Symfony2 Twig performance optimisation英文
>如果你不想使用Twig Engine,you can disable it用法语
> Caching in Symfony从它的菜谱 – 真的令人印象深刻!

其他优化:

>也许你可以使用Ubuntu的更新版本.个人而言,我更喜欢使用Debian,它也很受服务器的青睐,因为它非常稳定.>使用像Varnish这样的缓存代理可以是一个整理.>清漆需要开发人员的含义,也可能是形成.使用NGINX FastCGI Cache将FastCGI请求限制到HHVM,FPM或PHP-NG可以解决速度响应.

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读