php发展

首页 » 常识 » 问答 » Go语言都这么火了
TUhjnbcbe - 2020/11/27 19:42:00
白癜风治法 https://m-mip.39.net/baidianfeng/mipso_4249431.html
01Go语言适合做什么教程Go语言主要适合做服务器编程、分布式系统、数据库代理器、中间件、网络编程、数据库操作以及开发云平台等。02Go语言发展Go语言发展

年9月,RobPike在Google分布式编译平台上进行C++编译,在漫长的等待过程中,他和RobertGriesemer探讨了程序设计语言的一些关键性问题,他们认为,简化编程语言相比于在臃肿的语言上不断增加新特性,会是更大的进步。随后他们在编译结束之前说服了身边的KenThompson,觉得有必要为此做一些事情。几天后,他们发起了一个叫Golang的项目,将它作为自由时间的实验项目。

年5月Google发现了GO语言的巨大潜力,得到了Google的全力支持,这些人开始全职投入GO语言的设计和开发。年11月GO语言第一个版本发布。年3月第一个正式版本Go1.0发布。

年8月go1.5发布,这个版本被认为是历史性的。完全移除C语言部分,使用GO编译GO,少量代码使用汇编实现。另外,他们请来了内存管理方面的权威专家RickHudson,对GC进行了重新设计,支持并发GC,解决了一直以来广为诟病的GC时延(STW)问题。并且在此后的版本中,又对GC做了更进一步的优化。

到go1.8时,相同业务场景下的GC时延已经可以从go1.1的数秒,控制在1ms以内。GC问题的解决,可以说GO语言在服务端开发方面,几乎抹平了所有的弱点。在GO语言的版本迭代过程中,语言特性基本上没有太大的变化,基本上维持在GO1.1的基准上,并且官方承诺,新版本对老版本下开发的代码完全兼容。事实上,GO开发团队在新增语言特性上显得非常谨慎,而在稳定性、编译速度、执行效率以及GC性能等方面进行了持续不断的优化。Go语言开发团队

GO语言的开发阵营可以说是空前强大,主要成员中不乏计算机软件界的历史性人物,对计算机软件的发展影响深远。KenThompson,来自贝尔实验室,设计了B语言,创立了Unix操作系统(最初使用B语言实现),随后在Unix开发过程中,又和DennisRitchie一同设计了C语言,继而使用C语言重构了Unix操作系统。

DennisRitchie和KenThompson被称为Unix和C语言之父,并在年共同被授以图灵奖,以表彰他们对计算机软件发展所作的杰出贡献。RobPike,同样来自贝尔实验室,Unix小组重要成员,发明了Limbo语言,并且和KenThompson共同设计了UTF-8编码,《Unix编程环境》、《编程实践》作者之一。可以说,GO语言背靠Google这棵大树,又不乏牛人坐镇,是名副其实的“牛二代”。

03

选择Go语言

选择GO语言,主要是基于两方面的考虑执行性能缩短API的响应时长,解决批量请求访问超时的问题。在Uwork的业务场景下,一次API批量请求,往往会涉及对另外接口服务的多次调用,而在之前的PHP实现模式下,要做到并行调用是非常困难的,串行处理却不能从根本上提高处理性能。

而GO语言不一样,通过协程可以方便的实现API的并行处理,达到处理效率的最大化。依赖Golang的高性能HTTPServer,提升系统吞吐能力,由PHP的数百级别提升到数千里甚至过万级别。开发效率GO语言使用起来简单、代码描述效率高、编码规范统一、上手快。通过少量的代码,即可实现框架的标准化,并以统一的规范快速构建API业务逻辑。能快速的构建各种通用组件和公共类库,进一步提升开发效率,实现特定场景下的功能量产。

04Go语言适合做什么Go语言从发布1.0版本以来备受众多开发者
1
查看完整版本: Go语言都这么火了