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

多進程為什么不是把請求交給空閑進程?而是針對于某個客戶端固定了一個進程處理?

秦旭凱

我用瀏覽器請求,一直是給第一個進程處理,哪怕這個進程阻塞著
postman一直是第二個進程
有設置調度的嗎?把新的請求交給空閑進程?

2897 1 0
1個回答

six

因為瀏覽器(包括postman)會做優(yōu)化啊,瀏覽器新的請求復用之前建立的http連接。目的是避免頻繁的tcp連接建立和斷開,大大提升瀏覽器和服務端性能
?
如果滿足下面情況就會復用連接發(fā)起新的請求,
1、連接沒有被關閉
2、連接上沒有等待響應的請求,也就是上一個請求已經收到回復
?
瀏覽器是不知道你的進程發(fā)生了阻塞的,既然這個連接正常返回了數(shù)據,它認為連接對應的進程沒問題,那么下次他還會復用這個連接發(fā)起請求。
?
服務端無法把請求分配給其它進程是因為根據操作系統(tǒng)的底層原理,客戶端發(fā)起的連接不是進程間共享的,連接屬于哪個進程那么就只能那個進程處理。如果處理連接的進程被你sleep阻塞了,那它自然暫時無法處理這個連接后續(xù)的請求啦,其它進程幫不上忙的。
?
我覺得如果不想他們復用連接,可以send完數(shù)據后調用close關閉連接

  • 暫無評論
年代過于久遠,無法發(fā)表回答
??