beego实现的http服务,特别吃cpu

发布于 2022-09-05 21:59:28 字数 189 浏览 27 评论 0

情景
对比压测数据:tomcat/beego,在1000并发的情况下,数据对比。

beego的消耗的cpu已经93.3%(服务器是一个cpu,2核),消耗大大超出tomcat。

问题
请问golang为什么如此消耗cpu?请问还合适做api接口服务吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

半山落雨半山空 2022-09-12 21:59:28

如果你希望性能更好的话,推荐一个web框架 gin https://github.com/gin-gonic/gin

兔小萌 2022-09-12 21:59:28

beego是一个开发框架,本来就封装过多,你还拿这个框架开发的http服务来和tomcat对比。beego真的很占CPU。

但这个问题: golang如此消耗cpu?适合写API接口吗?

我建议不要拿beego和golang混为一谈,beego是一个框架,就是在各种包的基础上堆出来的适合新手快速开发的库,而golang是一门语言。golang有原生http库,如果你觉得http原生库写得不好,你完全可以自己重新写一遍,符合http协议就行。

golang是静态语言,至少是因为处理高并发速度还行,才被用在云计算领域。

写API完全没问题,docker/k8s/etcd全是go写的,不适合写的话,阿里/腾讯/百度//青/华为/谷歌/亚马逊云的某些云服务会。。。

我ぃ本無心為│何有愛 2022-09-12 21:59:28

完完全全没有任何的问题,beego封装太多了,便于使用

永不分离 2022-09-12 21:59:28

benchmark.png

beego 的性能从来不是最好的

沧桑㈠ 2022-09-12 21:59:28

如果是只写api我推荐不用框架,因为go的http.handleFunc(pattern,func(writer ResponseWriter,req *Request){})已经很全面了!
如果是想写一些页面和系统,就用gin框架跟Nodejs的express差不多,就是一个快

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文