指标 | Java | Golang | 备注 |
---|---|---|---|
人好招吗 | 容易 | 较少 | Java太多了,转Golang的人比较多,但还是少 |
学习门槛 | 高 | 低 | Java的体系比较庞大,能把人学趴下 |
内存占用 | 高 | 很低 | 改Golang之后内存占用少了80%(见参考资料1) |
启动时间 | 很慢 | 很快 | 微服务启动时间从30秒变成0.5秒 |
边缘设备支持 | 折腾多 | 折腾少 | 物联网边缘设备需求越来越强。 |
性能 | 高 | 更高 | 最新的测试是高一丢丢。 |
并发 | 高 | 高 | Golang天生高并发 |
省钱? | 需要更多的硬件 | 省钱 | Golang硬件利用率高,更节省设备费 |
易部署? | 慢 | 快 | Golang编译一个可执行文件就可以跑起来 |
框架体系 | 发达 | 一般 | Java人多势众,框架多 |
发展趋势 | 逐步衰落 | 逐步上升 | TIOBE编程语言排行榜。 |
易维护 | 代码难度大 | 代码易读 | 面向过程性的代码比面向对象抽象代码易读。 |
以上对比,错了请直接喷,我好去改。
作者微信:imyudao(请写明来自于csdn)
参考资料
1 、Ravi Kumar:What do open source IoT platforms/projects like Mainflux and EdgeXFoundry mean?
What is Go language and what are its benefits?
Go is a general purpose language developed by Google. In 2009, it had its first public introduction. Initially the EdgeX project was developed in Java but the footprint was pretty big and took too long to start the system. The codebase was then migrated from Java to Go and improvements in footprint were huge, close to 80%. While Java miscroservice startup takes 30 seconds, Go microservice takes 0.5 seconds. For scaling the system, Go language is efficient.
2、为什么在树莓派开发当中都用Python和C/C++,而不是用Java,是因为树莓派带不动Java吗?
https://www.zhihu/question/65792220/answer/289120081
更多推荐
开发物联网,Java和Golang哪个好?
发布评论