0

在 local.xml 中启用 memcached 时来自 /var/log/system.log 的错误:

2016-03-06T00:37:16+00:00 ERR (3):警告:在第 395 行的 /public_html/demo/lib/Zend/Cache/Backend/Libmemcached.php 中除以零

站点位于与 cloudlinux 的共享主机上。local.xml 中的 Memcached 部分如下所示:

<cache>
    <backend>memcached</backend>
    <slow_backend>database</slow_backend>
    <slow_backend_store_data>0</slow_backend_store_data>
    <auto_refresh_fast_cache>0</auto_refresh_fast_cache>
      <memcached>
        <servers>
            <server>
                <host><![CDATA[127.0.0.1]]></host>
                <port><![CDATA[11211]]></port>
                <persistent><![CDATA[1]]></persistent>
            </server>
        </servers>
        <compression><![CDATA[0]]></compression>
        <cache_dir><![CDATA[]]></cache_dir>
        <hashed_directory_level><![CDATA[]]></hashed_directory_level>
        <hashed_directory_umask><![CDATA[]]></hashed_directory_umask>
        <file_name_prefix><![CDATA[]]></file_name_prefix>
    </memcached>
</cache>

任何想法如何解决这一问题?为了避免此错误,我是否需要在 local.xml 中进行任何修复?我在 cpanel 中检查 CPU 使用率,它几乎一直是 88/100,如果我从 local.xml 禁用 memcached,CPU 使用率会下降到正常的 22/100。

if ($memSize === null || $memUsed === null) {
    $mem = $this->_memcache->getstats();
    if (isset($mem['limit_maxbytes']) && $mem['limit_maxbytes'] > 0) {
        return ((int) (100 * ($mem['bytes'] / $mem['limit_maxbytes'])));
    } else {
        return 100;
    }

第 395 行是:} else {

4

1 回答 1

0

通过在 index.php 中添加/修改以下函数调用来降低错误报告级别应该会抑制警告消息,但当然在某些时候您可能希望重新打开它,这个烦人的问题会再次出现......

错误报告(E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_WARNING);

希望这会有所帮助。

于 2017-02-08T05:25:56.170 回答