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

用腳本跑gatewaywoker,發(fā)現(xiàn)gateway內(nèi)部通訊有發(fā)送失敗的·消息還有很多

raker

當(dāng)前場(chǎng)景是240個(gè)用戶,鏈接ws,然后發(fā)送兩條消息,然后循環(huán)20次進(jìn)入發(fā)消息的操作,然后發(fā)現(xiàn)gateway有發(fā)送失敗的消息這是為啥啊,
[attach]2165[/attach]

3045 3 0
3個(gè)回答

raker

[attach]2166[/attach]
為啥一有用戶進(jìn)入某一個(gè)進(jìn)程,就會(huì)出現(xiàn)一個(gè)定時(shí)器,第二個(gè)用戶進(jìn)入相同的進(jìn)程,定時(shí)器也沒(méi)有在加,我也沒(méi)寫定時(shí)器操作,這是為啥啊

  • 暫無(wú)評(píng)論
walkor 打賞

有send_fail通常來(lái)說(shuō)不是什么大問(wèn)題,一般是由于客戶端主動(dòng)關(guān)閉連接或者客戶端無(wú)法接收數(shù)據(jù)導(dǎo)致的數(shù)據(jù)發(fā)送失敗。

send_fail有兩種原因

1、調(diào)用send接口向客戶端發(fā)送數(shù)據(jù)時(shí)發(fā)現(xiàn)客戶端已經(jīng)斷開(kāi),則send_fail計(jì)數(shù)加1。由于是客戶端主動(dòng)斷開(kāi)的,屬于正?,F(xiàn)象,一般可以忽略。

2、服務(wù)端發(fā)送數(shù)據(jù)的速度大于客戶端接收速度,導(dǎo)致數(shù)據(jù)不斷的積壓在服務(wù)端緩沖區(qū)(workerman為每個(gè)客戶端建立了一個(gè)發(fā)送緩沖區(qū)),如果緩沖區(qū)大小超過(guò)限值(TcpConnection::$maxSendBufferSize默認(rèn)1M)則會(huì)被丟棄,觸發(fā)onError事件(如果有的話),并導(dǎo)致send_fail計(jì)數(shù)加1。

例如瀏覽器最小化后js可能會(huì)暫停運(yùn)行,導(dǎo)致瀏覽器暫停接收服務(wù)端數(shù)據(jù),數(shù)據(jù)長(zhǎng)時(shí)間積壓在緩沖區(qū),超過(guò)限制后每次調(diào)用send都會(huì)導(dǎo)致send_fail計(jì)數(shù)加1。

總結(jié):
由于客戶端斷開(kāi)連接導(dǎo)致的send_fail一般不用擔(dān)心。
如果是由于客戶端停止接收數(shù)據(jù)導(dǎo)致的send_fail需要檢查下客戶端是否正常。
如果客戶端接收數(shù)據(jù)速度持續(xù)低于服務(wù)端發(fā)送速度,需要考慮優(yōu)化業(yè)務(wù)流程,或者優(yōu)化客戶端性能。如果是帶寬導(dǎo)致發(fā)送不暢可以考慮增加服務(wù)器帶寬。
?
參考手冊(cè)?http://doc.workerman.net/faq/about-send-fail.html
?
BusinessWorker內(nèi)部也有定時(shí)器,不一定是業(yè)務(wù)的定時(shí)器。

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

[attach]2173[/attach]
我想讓用戶都不會(huì)進(jìn)入這三個(gè)進(jìn)程,該怎么弄啊

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