简单说说 golang 的主要优点

wenfh2020 · · 4634 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

我使用 golang 的时间不多,没有深入研究,算是入门级别,也总结一下使用的心得吧。

我们要考虑一个高性能解决方案,首先要考虑的是:方案是否能解决问题,其次是否足够简单:研发人员能少写代码,运维方便维护部署。下面简单说说 golang 的几个主要优点。

???? 文章来源:wenfh2020.com


1. 优点

1.1. 高性能-协程

golang 源码级别支持协程,实现简单。协程使用,当底层遇到阻塞会自动切换,也就是逻辑层通过同步方式实现异步,充分利用了系统资源,同时避免了异步状态机的反人类异步回调,实现方式更为直观简单。
golang 协程是通过多线程维护,所以避免不了锁的使用,但也极大解决了研发效率问题。


1.2. 生态

有谷歌做背书,生态丰富,可以轻松获得各种高质量轮子。这样用户可以专注于业务逻辑,避免重复造轮子。


1.3. 部署

部署简单,源码编译成执行文件后,可以直接运行,减少了对其它插件依赖。不像其它语言,执行文件依赖各种插件,各种库,研发机器运行正常,放到生产环境上,死活跑不起来,需要各种安装和版本匹配。


2. 总结

golang 还有很多优点,例如有自己的 GC,有 defer 功能,函数可以返回多个参数等等。个人认为,最主要的还是上面提到的几个优点。

如果说,源码实现简单,我会推荐 python,但是 python 性能比 golang 要差一些。一个复杂的项目,很多时候,一种语言并不是万金油,需要几种一起上。高性能方面可以用 golang/c/c++,复杂的业务逻辑可以用 python,因为用 python 确实能少写很多代码,难道不香吗?!


最后总结一下,语言只是工具,没有高低之分,解决问题,要看自己工具箱的储备,保证效率情况下,哪个工具称手用哪个。


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:wenfh2020

查看原文:简单说说 golang 的主要优点

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4634 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传