本文摘自php中文网,作者(*-*)浩,侵删。

go为什么能做到高并发
goroutine是Go并行设计的核心。goroutine说到底其实就是协程,但是它比线程更小,几十个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这些goroutine之间的内存共享。 (推荐学习:go)
执行goroutine只需极少的栈内存(大概是4~5KB),当然会根据相应的数据伸缩。也正因为如此,可同时运行成千上万个并发任务。
goroutine比thread更易用、更高效、更轻便。
一些高并发的处理方案基本都是使用协程,openresty也是利用lua语言的协程做到了高并发的处理能力,PHP的高性能框架Swoole目前也在使用PHP的协程。
协程更轻量,占用内存更小,这是它能做到高并发的前提。
go web开发中怎么做到高并发的能力
学习go的HTTP代码。先创建一个简单的web服务。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
然后编译
1 2 |
|
然后访问
1 2 |
|
以上就是golang能做高并发的原因的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
golang 获取三种不同的路径方法(执行路径,项目路径,文件路径)
kotlin coroutines vs goroutines
更多相关阅读请进入《golang》频道 >>

Go语言101
一个与时俱进的Go编程知识库。