国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

webman + phpSpreadSheet 大數(shù)據(jù)導(dǎo)出內(nèi)存異常問(wèn)題

iqige

如題,在webman里,用 phpSpreadSheet 導(dǎo)出又臭又長(zhǎng)的數(shù)據(jù)(業(yè)務(wù)需要....),其中,還需要遍歷數(shù)據(jù)進(jìn)行處理(除了基本的數(shù)據(jù)外,還有幾個(gè)輔助的大數(shù)組)一個(gè)請(qǐng)求就基本漲7,80M的內(nèi)存,一個(gè)進(jìn)程沒(méi)處理幾次請(qǐng)求就換新的進(jìn)程了。(代碼里面沒(méi)有全局變量,沒(méi)有用到靜態(tài)數(shù)組之類的,處理的類都是通過(guò)new出來(lái)的,試過(guò),unset掉內(nèi)存也沒(méi)太大變化)。請(qǐng)問(wèn)下,這種情況應(yīng)該怎么排查,或者怎么釋放內(nèi)存。雖然workerman能夠自動(dòng)產(chǎn)生新的進(jìn)程,但是這樣進(jìn)程生成地也太頻繁了。。。
代碼在內(nèi)網(wǎng),沒(méi)法貼代碼了。

2516 5 1
5個(gè)回答

six

http://wtbis.cn/doc/webman/others/memory-leak.html
按照手冊(cè)說(shuō)法,php申請(qǐng)完的內(nèi)存不一定立刻歸還給操作系統(tǒng),會(huì)留著復(fù)用提高性能,試下請(qǐng)求完畢后調(diào)用 gc_mem_caches() 釋放內(nèi)存呢

  • iqige 2022-05-25

    gc_mem_caches()這個(gè)也試過(guò)了,能夠釋放一些,但是大部分沒(méi)辦法釋放

  • six 2022-05-25

    再加一個(gè) gc_collect_cycles() 試下

  • six 2022-05-25

    不過(guò)你一個(gè)請(qǐng)求就7,80M內(nèi)存占用,還是把php.ini里的memory_limit提高才好

  • iqige 2022-05-25

    對(duì)呀,現(xiàn)在就是加大了memory_limit,還能勉強(qiáng)撐一會(huì),加了gc_collect_cycles這個(gè)也沒(méi)啥效果。不行后面就用fpm了。感謝。

liziyu

yield 這個(gè)不曉得合不合適,試試看!~

  • 暫無(wú)評(píng)論
evilk

mark一下
難道沒(méi)有其他解決方案了嗎?

  • 暫無(wú)評(píng)論
yzh52521
  • 暫無(wú)評(píng)論
年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??