你们好!我是 go-zero 做者 Kevin。充满惊吓的 2020 快要过去了,看到掘金上的技术人年度征文,忍不住文字记录一下艰辛而又充满收获的 2020 ✍️node
春节假期疫情忽然升级,咱们面临着自身平台的转型升级。做为晓黑板CTO,有两个重点工做:nginx
团队压力巨大的同时也感觉到了史无前例的战斗热情,养兵千日用兵一时,不经历战与火的洗礼,怎么知道团队的技术能力是否可以经受得住流量洪峰的考验。git
战斗开始,迅速落实业务团队进行急需功能的开发,并行安排架构团队进行技术隐患排查、演练、攻关。github
在大概两个月的时间里,咱们基本每日三餐都在电脑桌前,困了就睡觉,醒来写代码(固然还有必要的开会),这真是人生一段很是难忘的特殊经历。。。后端
随着所需功能的极速上线,咱们立刻开始了大规模压测,大坑以下:微信
通过先后一个月开发、压测和开学前演练,咱们的系统基本知足开学需求了,接下来就是接受实战检验了。架构
开学第一天,咱们遇到的第一个问题部分服务供应商没法承载流量压力,虽然咱们以前盘算过,也充分交流过,但仍是未能预料到洪峰流量的凶猛,服务商紧急增长资源得以解决。并发
而后咱们消息分类服务的 ElasticSearch 集群压力过大,扩容的同时,发现调用代码未加熔断保护,直接把 ElasticSearch 集群压死了,里面加上熔断保护,几行代码就行了,自适应熔断保护工具包见 这里。框架
通过第一周的密集爆发式流量的考验,咱们整体很稳定。为此还获得了有关部门的感谢信,相比友商,咱们的服务稳定性仍是至关不错的。后续服务稳定性上基本能够用波澜不惊来形容。至此,go-zero (虽然此时还不叫 go-zero)算是经受了充分的实战检验 💪ide
7月份在跟集团技术通道老师的交流过程当中获得了充分的确定,集团开源通道推进和帮助我把底层微服务支撑框架对外开源。
在8.7日深夜,我完成了 github 代码的第一次提交,此时文档仅有我临时写出来的一页 readme,为啥只有一页 readme 就选择开源了呢?我以为万事开头难,若是决定把文档都写完再开源出来的话,可能这事就搁置了,因此仍是先让球滚起来吧!
一经开源,社区立马给了咱们比较热烈的反馈,更推进了咱们去快速完成文档。咱们在一个周末就补充了大量的使用文档,提供了比较完整的示例 shorturl 和 bookstore。后面大部分开发者都经过这两个例子感觉到了 go-zero 的便捷和工程效率。感谢你们给了咱们不少对示例的改进意见。
8月16日,go夜读的分享 系统的讲述了 go-zero 背后的故事和设计思考,得到了不少观众的留言承认。至今依然有很多人针对这个视频给我积极的反馈。感谢你们的承认!
8月24日,gocn 的 报道,让 gopherchina 社区第一次大规模的了解了 go-zero。社区开始有大量gopher的加入,微信群人数迅速增加。
9月开始,go-zero 屡次出如今 github Go 语言日榜月榜顶部,如图:
日榜 | 月榜 |
---|---|
![]() |
![]() |
同时很多家公司将 go-zero 用于生产,并跟我反馈上线后一直平稳运行,其中不乏日活过百万的平台。
10月得到了 gitee 最有价值项目(GVP),并接着得到了开源中国年度 最佳人气项目奖项。
11月22日,我在 gopherchina 大会作了『云原生go-zero微服务框架的设计思考』的主题分享,现场气氛很是热烈,听说门口堵满了进不来了,得到了不少资深开发者的承认,知乎评论见 这里,其中提到的个人年龄不对哈👀,部分现场图以下:
分享 | 观众 |
---|---|
![]() |
![]() |
12月20日,应邀参加腾讯云开发者大会,作了『转型以后 - 面对流量洪峰,微服务架构如何进行弹性设计?』的分享,以下:
开始 | 大纲 |
---|---|
![]() |
![]() |
在掘金发了 20+ 篇 go-zero 系列文章,跟用户详细分享了微服务框架设计的原理和实现,详见 这里。
近 3000 人的微信社区,天天热烈的技术讨论和用户之间的相互帮助,已经造成了良好的社区氛围。咱们也从中得到不少的用户反馈,为咱们进一步增强 go-zero 指明了方向!👏
github star 正常每个月增加 1000 左右,平均天天 33+ stars,如今 4700+,增加曲线以下:
用户到底想要什么样的框架?
用户为何喜欢 go-zero?
https://github.com/tal-tech/go-zero
欢迎你们使用 go-zero 并 star 支持咱们!👏
真心感谢一直支持咱们的大佬们,以及众多使用 go-zero 的 gopher 们,之因此不列名单,实在是帮助过咱们的人太多了,生怕一不当心就遗漏了某位大佬 🤝
项目地址:
https://github.com/tal-tech/go-zero