加速CakePHP

2020/12/31 18:41 · php ·  · 0评论

我一直是CakePHP的忠实拥护者和用户,已有2.5年的历史了,但是大多数其他开发人员在该框架上遇到的主要错误是它运行缓慢,并且调度周期花费的时间太长,无法使其成为生产环境的可行解决方案。

我希望这个问题能激发人们分享他们的提示,技巧和黑客技巧,以提高CakePHP的性能。

我最常提到的博客文章是伪编码器的8种提高CakePHP Apps性能的方法,虽然有很多技巧,但这里还有更多技巧!

因此,请随时分享您的想法,以使这个出色的框架更加灵活!

我认为这是一个非常好的问题。这是我为加快蛋糕应用程序速度所做的几件事。

  1. 如链接文章的评论中所述,减少$uses数组有一点帮助。您可以通过关联模型访问关联模型。因此,如果“城市”和“地址”关联在一起,则可以通过访问地址,$this->City->Address而不是将两者都包含在$uses数组中

  2. 在apache中,将代码从中移动.htaccess到主服务器config / vhost / whatever并进行设置AllowOverride None

  3. 在负载平衡的环境中,将会话从数据库移至内存缓存。Memcache非常容易设置,蛋糕的DB会话类还有很多不足之处。在高负载的应用程序中,垃圾收集将杀死您,因为它最终每秒运行一次。此外,这是一个很棒的小脚本,可为您提供有关内存缓存使用情况的统计信息(基于apc.php)
    http://livebookmark.net/journal/2008/05/21/memcachephp-stats-like-apcphp/

  4. 正如Mark Story在8种方式的文章的评论部分中提到的那样,压缩资产是一个非常好的主意。这是一个最小化js和css文件的好脚本,可用于替换cake附带的默认css.php。
    http://www.milesj.me/blog/read/32/CSSJSAsset-Compression-In-CakePHP

  5. 如果由于某些原因人们点击了许多不再存在的图像/ css / js,确保这些页面不会产生蛋糕404错误可能是有益的,因为它必须经历整个蛋糕调度过程,从而产生会话等。只需更改以下内容即可:

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ /index.php?url=$1 [QSA,L]
    

    对此:

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !^/(img|css|js)/(.*)$
    RewriteRule ^(.*)$ /index.php?url=$1 [QSA,L]
    

我刚刚写了一些更多的技巧,以附加一些实用的代码来大大加快cakephp应用程序的速度:http :
//www.dereuromark.de/2012/02/13/what-really-speeds-up-your-cakephp-app/

这里还有一些其他好的技巧,包括使用改进的router::url助手来提高性能以及一些常识:

http://www.chainfire.eu/articles/76/CakePHP_and_performance_for_noobs_/

无论是使用CakePHP还是其他工具,都可以获得功能更强大的服务器,更多GHz和RAM。价格每年便宜。虽然如果您使用的是VPS,但我知道事情可能会很紧张。

有时,新硬件要比花钱让别人优化代码便宜……

对于cakephp 2中的Mins css和js,您可以使用以下插件之一

https://github.com/Er-Kalpesh/CakePHP-Combinator-Plugin

最适合优化CSS和JS。

我们将Memcache用于来自数据库的静态数据,例如横幅,aboutus,地址等等。当数据被插入,更新或删除时,我们将删除缓存文件。在查询时,我们首先检查文件是否存在,然后从json文件中获取数据,而无需查询到数据库,否则查询并创建新文件。因此,下一次数据将来自Json。

对于CakePHP 2.x,性能瓶颈可能是使用Hash::函数(https://book.cakephp.org/2.0/en/core-utility-libraries/hash.html)。

使用复杂表达式时它们非常慢。如果您自己编写此逻辑,则可以提高性能。

本文地址:http://php.askforanswer.com/jiasucakephp.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!