编程学习网 > PHP技术 > swoole > 浅谈swoole协程与GO协程之间的区别
2021
09-14

浅谈swoole协程与GO协程之间的区别

自从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教程欢迎持续关注编程学习网

扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取