2021-03-05:go中,io密集型的應用,比如有很多文件io,磁盤io,網絡io,調大GOMAXPROCS,會不會對性能有

      網友投稿 766 2025-04-04

      2021-03-05:go中,io密集型的應用,比如有很多文件io,磁盤io,網絡io,調大GOMAXPROCS,會不會對性能有幫助?為什么?

      福哥答案2021-03-05:

      這是面試中被問到的。實力有限,真正的答案還不知道。

      答案1:

      調節這個參數影響的是P的個數,也就影響了M(線程)干活的個數。相當于你可以有更多的執行線程。

      先以網絡io來說,網絡io 在golang 里面是異步的,用epoll池做的io復用。每個網絡調用其實都是異步的,發數據給到內存,調度權就可以讓給其他goroutine了,所以,其實一個線程能處理過來的話,性能是不會差的,這個時候你加多P其實提升不大。只有你單線程處理不過來這些網絡io的時候(每個都處理很慢),加多P才有明顯提升

      如果是磁盤io的話,這個有點特殊,磁盤io不是異步的,沒有aio這種方式。所以你的磁盤io調用下去就卡住M了,這個時候等sysmon發現系統調用超時才會搶占M,這一來回就耗費時間了,所以,這種情況下你干活的M多一點確實能帶來一些性能的提升,相當于并行干活的M多一些。

      無論哪種情況,P的個數都不建議超過本機cpu的個數。因為多個cpu才是真正的并行執行,上層都是通過調度切換模擬出來的。

      答案2:

      GOMAXPROCS 用默認的,就是CPU的硬件線程數目,

      對于大部分IO密集的應用是不合適的。

      至少應該配置到硬件線程數目的5倍以上, 最大256。

      GO的調度器是遲鈍的,它很可能什么時都沒做,直到M阻塞了想當長時間以后,才會發現有一個P/M被syscall阻塞了。然后,才會用空閑的M來強這個P。

      補充說明:調度器遲鈍不是M遲鈍,M也就是操作系統線程,是非常的敏感的,只要阻塞就會被操作系統調度(除了極少數自旋的情況)。但是GO的調度器會等待一個時間間隔才會行動,這也是為了減少調度器干預的次數。也就是說,如果一個M調用了什么API導致了操作系統線程阻塞了,操作系統立刻會把這個線程M調度走,掛起等阻塞解除。這時候,Go調度器不會馬上把這個M持有的P搶走。這就會導致一定的P被浪費了。

      2021-03-05:go中,io密集型的應用,比如有很多文件io,磁盤io,網絡io,調大GOMAXPROCS,會不會對性能有

      這就是為何,GOMAXPROCS 太小,也就是P的數量太少,會導致IO密集(或者syscall較多)的go程序運行緩慢的原因。

      那么,GOMAXPROCS 很大,超過硬件線程的8倍,會不會有開銷呢?

      答案是,開銷是有的,但是遠小于Go運行時遲鈍的調度M來搶奪P而導致CPU利用不足的開銷。

      【GO語言】合理配置GOMAXPROCS提升一倍以上的性能

      GOMAXPROCS你設置對了嗎?

      go 協程詳解

      2021-03-05:go中,io密集型的應用,比如有很多文件io,磁盤io,網絡i…如何解答呢?

      Go 任務調度

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:excel中使用格式刷的教程(Excel怎么使用格式刷)
      下一篇:怎么取消智能排版(word自動排版怎么取消)
      相關文章
      亚洲精品一二三区| 7777久久亚洲中文字幕| 亚洲人成欧美中文字幕| 亚洲一区二区免费视频| 亚洲精品不卡视频| 亚洲高清无在码在线电影不卡 | 一本色道久久综合亚洲精品| 亚洲熟伦熟女新五十路熟妇| 亚洲äv永久无码精品天堂久久| 亚洲欧美成人一区二区三区| 亚洲欧美熟妇综合久久久久 | 亚洲高清有码中文字| 国产精品亚洲精品| 亚洲一区二区三区在线观看网站| 中文字幕亚洲综合小综合在线| 精品国产成人亚洲午夜福利| 亚洲熟女精品中文字幕| 亚洲av午夜电影在线观看| 在线观看亚洲网站| 亚洲性日韩精品国产一区二区| 久久久久久A亚洲欧洲AV冫| 国产综合亚洲专区在线| 亚洲精品国产字幕久久不卡| 亚洲av无码乱码国产精品| 91精品国产亚洲爽啪在线影院 | 国产成人亚洲精品91专区手机| 国产亚洲精久久久久久无码AV| 亚洲中文字幕久久精品无码APP | 亚洲欧美日韩综合久久久| 色偷偷亚洲第一综合| 亚洲国产免费综合| 亚洲精品国产成人片| 亚洲av丰满熟妇在线播放| 亚洲国产精品久久网午夜| 国产亚洲精品VA片在线播放| 久久精品亚洲日本波多野结衣 | 国产成人精品久久亚洲| 久久精品国产亚洲沈樵| 在线免费观看亚洲| 最新亚洲精品国偷自产在线| 久久久久亚洲精品无码网址色欲|