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

workman的內(nèi)存約來越大

yzwei1019

問題描述

直播間,workman的內(nèi)存約來越大,自己不會釋放,一直會到服務(wù)器內(nèi)存滿了為止!請教大佬們,這個(gè)該怎么處理呢?

截圖

2525 1 3
1個(gè)回答

walkor 打賞

IMWorker可能業(yè)務(wù)有內(nèi)存泄漏,需要自己定位下代碼

  • yzwei1019 2023-07-29

    嗯嗯謝謝啦,我記得已經(jīng)到達(dá)了一定量,workman會重啟,又重4M開始疊加

  • walkor 2023-07-29

    webman有子進(jìn)程內(nèi)存監(jiān)控,workerman本身沒有

  • yzwei1019 2023-07-29

    噢,IMWorker 隨著人數(shù)占用內(nèi)存越來越大,我把php.ini memory_limit 設(shè)置成8G,服務(wù)器內(nèi)存是16G,現(xiàn)在有6000人數(shù),隨著人數(shù)增長,內(nèi)存會一直不夠用,我想問下,業(yè)務(wù)已經(jīng)優(yōu)化了,沒有什么可在優(yōu)化的了,現(xiàn)在該怎么處理呀?其實(shí)最好的可以類似重啟一樣的操作,可以把占用的內(nèi)存又重新歸0,這樣是最好的了

  • walkor 2023-07-29

    內(nèi)存泄漏一般是長周期數(shù)組里無限添加元素導(dǎo)致的。

    如果實(shí)在定位不到業(yè)務(wù)內(nèi)存泄漏的代碼,定時(shí)reload也可以。像根據(jù)內(nèi)存占用定時(shí)執(zhí)行某個(gè)程序問webman/ai就好,下面是AI回復(fù)


    寫一個(gè)sh腳本,服務(wù)器內(nèi)存使用量大于90%時(shí),執(zhí)行 php /your/path/start.php reload。利用crontab 每分鐘執(zhí)行一次這個(gè)腳本。

    AI回復(fù)
    可以按照以下步驟設(shè)置定時(shí)任務(wù)來每分鐘執(zhí)行該腳本:

    1. 創(chuàng)建一個(gè)新的.sh文件,比如check_memory.sh,并將以下內(nèi)容復(fù)制到文件中:
    #!/bin/bash
    
    # 獲取當(dāng)前內(nèi)存使用率
    memory_usage=$(free | awk '/Mem/{printf("%.2f"), $3/$2 * 100}')
    
    # 判斷內(nèi)存使用率是否大于90%
    if (( $(echo "$memory_usage > 90" | bc -l) )); then
        # 執(zhí)行 reload 命令
        php /your/path/start.php reload
    fi
    1. 給該.sh文件添加執(zhí)行權(quán)限,使用以下命令:
    chmod +x check_memory.sh
    1. 打開終端,輸入以下命令來編輯crontab定時(shí)任務(wù):
    crontab -e
    1. 在打開的編輯器中,添加以下行來設(shè)置每分鐘執(zhí)行該腳本:
    * * * * * /path/to/check_memory.sh

    請將/path/to/check_memory.sh替換為實(shí)際的.sh文件路徑。

    1. 保存并退出編輯器。

    現(xiàn)在,該腳本將會每分鐘執(zhí)行一次,并在服務(wù)器內(nèi)存使用量大于90%時(shí)執(zhí)行php /your/path/start.php reload命令。

  • yzwei1019 2023-08-03

    執(zhí)行這個(gè)命令 php start.php reload

    之后報(bào)這個(gè)錯(cuò)誤

    SendBufferToWorker fail. The connections between Gateway and BusinessWorker are not ready.

  • yzwei1019 2023-08-03

    exit_count 顯示1
    exit_status 還是0

  • yzwei1019 2023-08-03

    我們模擬3個(gè)賬號在直播間一直發(fā)消息,發(fā)1萬條消息,imworker占用很少內(nèi)存,真實(shí)線上環(huán)境6000人同時(shí)在線,有人發(fā)送消息,imworker內(nèi)存就會累積很快,30分鐘就能達(dá)到7G

  • yzwei1019 2023-08-03

    跪求大佬指點(diǎn)~非常感謝!

  • kspade 2023-08-04

    真實(shí)在線 6000人。。。這個(gè)用戶體量 老弟還不考慮多分布式 嗎

  • yzwei1019 2023-08-04

    大佬,我研究下分布式,6000個(gè)人多嗎?我看官方說幾萬都沒有問題

  • kspade 2023-08-04

    幾萬肯定沒問題的。

  • walkor 2023-08-04

    6000不多,前兩天還看到群里有人2臺gateway Worker支持了40萬設(shè)備在線

  • yzwei1019 2023-08-07

    大佬,那還是我代碼有問題,哭暈在廁所了,我們是6000多人 一直聊天和搶紅包

年代過于久遠(yuǎn),無法發(fā)表回答
??