诊断哪些插件/主题使用最多内存的最佳方法?

时间:2012-12-01 作者:alex

我刚刚将我的一个WP网站从3.1.4升级到3.4.2,我收到了一条错误消息。

致命错误:允许的内存大小为

为了解决这个问题,我补充道define(\'WP_MEMORY_LIMIT\', \'128M\'); 到wp-config.php, 但如果我必须对我所有的WP网站都这样做,我想我的内存会很快耗尽。

如何检查插件或主题使用的内存量?

当做

PS:为什么我在使用3.1.4时没有收到消息?3.4.2是否使用更多内存?

2 个回复
SO网友:realloc

有一个很好的插件叫做P3 (Plugin Performance Profiler). 试试看!

此插件通过测量插件对站点加载时间的影响,创建WordPress站点插件性能的概要文件。通常情况下,WordPress网站加载缓慢是因为插件配置不当或插件太多。通过使用P3插件,您可以缩小任何导致网站速度缓慢的因素。

此插件使用canvas元素绘制图表,需要Firefox、Chrome、Opera、Safari或IE9或更高版本。此插件在IE8或更低版本中不起作用WordPress Benchmark: 3.0 vs 3.1 vs 3.2 vs 3.3.
仅文本镜像google cache

WordPress现在在3中有4个版本。x线。由于前两个主要版本的采用率很低,尽管3.2版本很好,但问题是新的WordPress 3.3能否说服用户升级?这个基准将试图至少给出部分答案。

SO网友:Mark Kaplun

对于像php这样的解释语言,代码中添加的每一行都意味着更多的内存消耗,因此,添加每一个特性后,WP都需要更多的内存,这很简单。

您没有指定何时收到该消息,以及是否正在运行非英语WP。我认为许多字符串是作为内置帮助系统的一部分添加的,如果您运行已翻译的WP,也会加载它们的翻译。

如果只升级了WP,那么故障不太可能与主题或插件有关。很难衡量每个插件和主题使用了多少内存,因为大部分内存可能是动态分配的,并且在站点上的不同前端/管理页面之间会发生变化。例如,由于要处理的数据更少,因此单个贴子页上消耗的内存将比类别页上消耗的内存更少。

如果内存有问题,并且您可以对服务器进行更改,那么您应该安装apc或其他php accelerator. 因为他们将php代码预编译成字节码,占用的内存更少(执行速度更快)。

但是如果您在所有站点上设置WP\\u MEMORY\\u LIMIT,我完全不确定您是否会遇到问题。WP\\u MEMORY\\u LIMIT只需对WP说(WP将其传递给php解释器),即maximal 内存消耗可能是1.28亿,但WP在启动时不会分配这么多内存,除非你的插件和主题完全出了问题,否则大多数时候你都远远低于它。

因此,重要的是要知道哪些特定操作会导致内存的高使用率。如果它只在管理中,那么不要担心它。例如,一个非常简单且不准确的计算-如果您的服务器分配了512M,那么您将能够同时处理4个最大内存页请求,但是4个管理页在完全相同的时间(完全相同的秒)被访问的可能性有多大?对于大多数WP站点,非常接近0。

还有更简单的事情可以做——在php中。ini文件集memory_limit 至128M。这样,您就不必担心为每个安装的新站点添加定义的WP\\u MEMORY\\u限制。

结束

相关推荐

Wp-content/plugins中的权限问题

我在本地机器上安装了一个WP,试图用插件弄脏我的手。我希望从github克隆一个包含此插件代码的项目。然而,我没有插件内部的权限,作为一个没有su权限的普通用户,我无法做到这一点。(当然,我可以成为根并这样做,但我不认为这是应该的)。然后,默认情况下,WP安装中的文件夹将组设置为“tape”,这对我来说很奇怪。本地WP安装上内部文件夹的正确权限应该是什么?