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

gateworker 分布式部署延遲好幾分鐘

zsslover

問題描述

這里寫描述
gateworker 分布式部署延遲好幾分鐘
register 和 gateworker mysql 一臺服務(wù)器簡稱A ,businessworker 單獨一臺 簡稱B,目前
B onmesseage 接受到消息比客戶端發(fā)送的消息晚了好幾分鐘
[ 2023-11-11T17:31:58+08:00 ][ log ] 請求參數(shù):{"command":,"api_version":"","data":{"addr":"","cpuname":"","iflist":[{"ifaddr":"","ifmac":"14:3d:f2:f3:c0:7f","ifname":""}],"last_ts":1699694855,"load":0.19705462455749512,"os":"","policy_ver":0,"port":"","uuid":""},"ts":1699694855}

ts的時間戳是1699694855 2023-11-11 17:27:35 日志接受的時間是 17:31:58 差了4分鐘多, 目前A服務(wù)器cpu 60% B服務(wù)器 cpu 20% 這是什么原因呢

其中A服務(wù)器啟動的start_register 和 start_gateway 目前調(diào)的 start_gateway 進(jìn)程是8個
B服務(wù)器啟動的是 start_business 進(jìn)程是128 個

A 服務(wù)的status

B服務(wù)器status

1129 3 0
3個回答

meows

把你的gateway,register,businessworker 配置都發(fā)出來。

  • 暫無評論
meows

還是說很少用戶發(fā)送消息到達(dá)businessworker 都會延遲幾分鐘? 這樣的話,就檢查下網(wǎng)絡(luò)環(huán)境以及配置文件。

  • meows 2023-11-12

    也不排除你業(yè)務(wù)的問題

  • zsslover 2023-11-12

    配置文件加上了

  • zsslover 2023-11-12

    2023-11-12 13:52:08 pid:3218758 SendBufferToWorker fail. May be the send buffer are overflow. See http://doc2.workerman.net/send-buffer-overflow.html 現(xiàn)在A服務(wù)一直報這個

  • zsslover 2023-11-12

    A 服務(wù)器和B服務(wù)器的負(fù)載都不高,就是有延遲

  • zsslover 2023-11-12

    現(xiàn)在一分鐘內(nèi)有心跳的是5000個

  • latin 2023-11-12

    請求量太大,服務(wù)端處理不過來了,導(dǎo)致延遲。
    你們多少客戶端在線啊,每秒心跳5000個,30秒一個心跳的話,都要15萬在線了。
    感覺是客戶端一直在瘋狂發(fā)請求請求量太大導(dǎo)致

  • zsslover 2023-11-12

    B服務(wù)器的負(fù)載和cpu都不高

  • zsslover 2023-11-12

    我看了在線數(shù)是1000多個

  • zsslover 2023-11-12

    這個和延遲有關(guān)系嗎

  • zsslover 2023-11-12

    我把status放上去了

  • latin 2023-11-12

    客戶端1000個,心跳每秒5000個,說明客戶端邏輯有問題,一直在瘋狂發(fā)心跳請求,甚至業(yè)務(wù)請求也在瘋狂發(fā),業(yè)務(wù)處理不過來。你發(fā)的報錯里的url地址里已經(jīng)說明了原因了

  • zsslover 2023-11-12

    但是cpu和負(fù)載都不高 ,我看負(fù)載高了才應(yīng)該增加business 服務(wù)器

  • zsslover 2023-11-12

    心跳不是每秒5000個 ,是看了心跳更新時間在一分鐘內(nèi)是5000個

  • latin 2023-11-12

    看報錯里的url,原因里面作者給你總結(jié)好了

  • zsslover 2023-11-12

    但是一條一條對沒有找到原因,按理說這些請求應(yīng)該能處理好,mysql慢日志也沒有

  • zsslover 2023-11-12

    這個和延遲有關(guān)嗎,這個報錯運行一段時間才會報,一開始啟動的時候沒有這個報錯

  • latin 2023-11-12

    有關(guān)系,處理不過來,隊列擠壓,后面的請求等待前面的處理完才能被處理,所以延遲

  • latin 2023-11-12

    文檔里說的明明白白的

  • zsslover 2023-11-12

    負(fù)載和cpu 不高 也可能出現(xiàn)這種處理不過來的情況嗎

  • latin 2023-11-12

    業(yè)務(wù)有IO請求,比如數(shù)據(jù)庫,curl這些等IO等待的時候不占用本地cpu的。比如一個SQL請求耗時0.5秒,一個進(jìn)程一秒鐘只能處理2個請求。128個進(jìn)程每秒只能處理256個請求,如果每秒有300個請求過來,請求就處理不過來了。但是你會發(fā)現(xiàn)cpu負(fù)載很低,因為大部分都在等待IO返回,不耗費cpu。內(nèi)存夠的你可以開512個進(jìn)程,增加吞吐量。但是也不一定能處理得過來。你最好記錄日志,每個請求處理耗時,每秒處理多少請求。

meows

gateway 9 個進(jìn)程,businesswork 128個進(jìn)程。
你的描述:
CPU大量空閑,businessworker 大量空閑狀態(tài),出現(xiàn)部分worker 繁忙狀態(tài)。
你的代碼里面是不是有調(diào)用第三方API的動作?
也可能是SQL執(zhí)行太慢?strace -ttp [繁忙進(jìn)程的PID] > output.log,你把日志文件截圖發(fā)來看看呢?

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