精品少妇第一页,亚洲欧美日韩少妇一区二区三区,一区二区三区国产亚洲综合,亚洲熟女综合色一区二区三区

  • <bdo id="g0y6y"><tbody id="g0y6y"></tbody></bdo>
    <center id="g0y6y"><cite id="g0y6y"></cite></center>
    <tfoot id="g0y6y"><strong id="g0y6y"></strong></tfoot>
  • <tbody id="g0y6y"><strong id="g0y6y"></strong></tbody>
    <menu id="g0y6y"><option id="g0y6y"></option></menu><center id="g0y6y"></center>
  • <abbr id="g0y6y"><center id="g0y6y"></center></abbr>
    <rt id="g0y6y"><option id="g0y6y"></option></rt>

    織夢教程


    dedecms生成靜態(tài)文件504 time out的性能優(yōu)化


    如果你碰到dedecms 生成靜態(tài)文件504 time out不一定是服務(wù)器的原因。如果你在文章中增加了大量的高亮標(biāo)簽,比如幾千上萬,那么dede的程序要替換這些高亮標(biāo)簽很可能就直接掛了。

    今天碰到的問題,有個dedecms系統(tǒng)中的高亮標(biāo)簽多大6000多個,直接導(dǎo)致生成html慢的跟蝸牛一樣,生成一篇靜態(tài)文章要12 秒或者更多。

    所以跟了下生成html的代碼。

    一直跟蹤到 include/arc.archives.class.php 這個文件的第1211行,性能都豪在這里了大概意思是根據(jù)一個段落來匹配存在的高亮標(biāo)簽,而且只對同一個標(biāo)簽匹配一次,反正很煩。

    只實現(xiàn)這個,為嘛不直接用str的操作的,preg來來去去的多耗性能啊,所以修改了下。

    從arc.archives.class.php 第1202行到1211行用如下代碼代替,也就是說,把他哪個神馬$body = @preg_replace("#(^|>)([^<]+)(?=<|$)#sUe", "_highlight('\\2', \$karr, \$kaarr, '\\1')", $body); 這一句給刪掉。在while循環(huán)里進(jìn)行替換就行了。

    測試通過。


    while($row = $this->dsql->GetArray())
            {
                $key = trim($row['keyword']);
                $key_url=trim($row['rpurl']);
                $karr[] = $key;
                $keyReplace = "$key";
                $kaarr[] = $keyReplace;
                //直接對每個Key進(jìn)行一次字符串替換操作
                $searPos = mb_strpos($body, $key);
                if($searPos !== false){
                    $body = mb_substr($body, 0, $searPos) . $keyReplace . mb_substr($body, $searPos + mb_strlen($key));
                }
            }



    相關(guān)文章

    首頁  電話  咨詢  頂部