自從php武裝上swoole以后,戰斗力大大提升,特別是有了協程后,很多邏輯都可以異步執行了。隨著PHP編程語言被越來越多的人使用,更多人了解到swoole的存在,有的人說swoole是披著PHP外衣的C程序,但是swoole并不是一個簡單的PHP框架,
正如swoole官方首頁的第一句話“重新定義PHP”,千萬不要用舊有php的思想來寫swoole代碼!
swoole很多特性都是致敬go的 比如管道,defer,go,waitgroup等。 重點說下php swoole的協程,swoole協程是基于單線程的,也就是說 一個新的請求進來,一條線程處理該請求,邏輯里面再創建協程去處理其他邏輯,這個新的協程是只歸他的父級線程調用,其它線程無法調用的~;
但是go語言協程相對智能很多,使用的是MPG模式調度協程~ 簡單說就是產生的所有協程其它的線程是有空就能去執行的,是多cpu調度的,相當于有一個協程池,空閑的cpu會去池子里執行協程任務,相比swoole的單cpu調用更有效地利用系統資源。可以方便的實現API的并行處理,達到處理效率的最大化。
java的并行計算據我了解還是線程級別的,相同的邏輯處理,go的內存占用更低~
以上就是“淺談swoole協程與GO協程之間的區別”的詳細內容,想要了解更多swoole教程歡迎持續關注編程學習網
掃碼二維碼 獲取免費視頻學習資料
- 本文固定鏈接: http://www.wangchenghua.com/post/8563/
- 轉載請注明:轉載必須在正文中標注并保留原文鏈接
- 掃碼: 掃上方二維碼獲取免費視頻資料
查 看2022高級編程視頻教程免費獲取