【发布时间】:2012-01-29 15:12:10
【问题描述】:
我们在负载平衡器后面有 3 个 drupal 网络服务器 (pressflow 6.22)。由于更新,我们收到了大量来自 php 的通知,而我们尝试修复这些我只是想禁用这些通知。所以我把 PHP.ini 从
error_reporting = E_ALL
到
error_reporting = E_ALL & ~E_NOTICE
我这样做后,机器上的负载猛增了 30 倍,数据库连接数翻了一番。
我一设置它就恢复正常。
我不明白如何隐藏通知会引起如此多的悲伤。过滤掉这些是否只是在 php 上增加了很多开销?
很多这些错误来自核心和主要模块,所以在某些情况下,我不想破解模块来修复通知,这是否意味着我只能忍受它们?
TIA
【问题讨论】:
-
数据库连接的数量表明这可能与 Drupal 的数据库记录器 Watchdog 有关。尝试禁用数据库日志记录模块,看看会发生什么。 PHP 的错误报告绝对没有 理由去触碰数据库。
-
感谢 Fuzzy,它不是看门狗,我已将其关闭并使用 syslog。数据库上的双倍是我收集的 apache 持有的东西,它不像有两倍的查询,它在 apache 上的负载是如此之高以至于它持有 DB