七牛与GopherChina的不解之缘

别说谁变了你拦得住时间么 提交于 2020-12-03 14:15:24

提及中国 Go 语言的布道与实践,七牛及其 CEO 许式伟总是出现频率最高的两个名词。从近乎冒险地选择到互相促进,七牛占据了Go 语言领域的很多个第一。第一个使用Go语言进行大规模项目研发;第一个完全用Go 语言实现分布式对象存储系统的核心服务编写第一本国内原创图书《 Go 语言编程》......时至今日, Go语言几乎已成为云计算领域的统治者,七牛云也已经服务了40万客户,成为国内云服务行业的TOP 品牌。

 

 向上追溯, Google 首次对外公开透露Go 的存在是在09年末,而仅在一年半之后,七牛就与 Go 正式结缘,启用其来研发分布式对象存储系统,此时甚至连官方正式版都尚未发布,市面上几乎没有发现这么大规模玩 Go 语言的其他个体或组织。而这个“吃螃蟹”的壮举,并不是盲目的冒险决策,而是七牛团队经历了慎之又慎地分析、测试、实践、内部争论后,认为Go 是一个能把 C++ 的性能优势以及Erlang 天生的并发特性相结合并的语言,并且语法语义非常简约,编写也很优雅,加上考虑到背景以及社区的基因,从而做出的决策。

 

从只有官方文档作为资料的岁月起步,七牛团队在四年时间内,用 Go 开发了以下服务和工具:

  1. 分布式存储系统 ( Distributed Key/Value Storage)

  2. 数据处理服务 (Data Processing)

  3. 网络接口服务 (RESTful API Service)

  4. 消息队列服务(Message Queue Service)

  5. 日志处理系统 (Log Service)

  6. Web网站 (不含前端 JavaScript)

  7. CLI命令行和 GUI 图形界面工具

  8. 其他辅助工具

 

随着后续生态系统的不断丰富与优化,特别是 2013年,又一个重磅项目 Docker 的出炉, Go 语言在云计算领域已成燎原之势。七牛云也在不断进行更深入的探索。将云服务的后端基于Docker进行微服务化,提出组件即服务(Components as a Service)+场景化模式(Pattern)结构,为用户提供更定制化,更贴近用户实际应用需求的数据服务。同时,七牛也正在筹备全球全部用 Go 语言搭建的第一个大规模直播云平台和第一个公有云通用计算平台。

 

目前,Go 在七牛的工程中代码覆盖率已经超过 90% ,而另外10%不能覆盖的原因是七牛给开发者自助使用的 Web 界面需要用JavaScript 编程来实现酷炫的前端,以及为开发者准备了多达超过 10 种编程语言的 SDK。

 

七牛旨在为企业打造了一站式的数据托管和处理平台,并围绕数据主题提供丰富的周边功能,如数据存储,上传下载加速,以图片音视频为主的数据处理、分析、自定义计算平台等业务,接管数据产生、上传、存储、处理分析、下载等全部流程,力求为企业提供全生命周期的数据管理服务,通过帮助用户缩短从想法到产品的距离。

 

在自研项目以外,七牛也一直致力于促进 Go 在国内的普及和发展,积极进行技术分享和布道。作为Golang 中国社区的合作伙伴,七牛在去年就独家赞助了Gopher China 2015大会并全程护航。今年,七牛将作为主办方,将与大家进行更深度的交流,而且七牛的老大,国内Go语言的布道师许式伟也会来现场给大家带来精彩的技术演讲,敬请期待~

 


本文分享自微信公众号 - GoCN(golangchina)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!