Golang Go语言活动精彩回顾|GopherChina 2019 干货回顾
Golang Go语言活动精彩回顾|GopherChina 2019 干货回顾
2019 年 4 月 28 日晚,由探探独家冠名,滴滴和 GoCN 社区联合主办,英语流利说、Grab、客路、JetBrains、PingCAP、阿里云、TARS、美餐、心动网络等多家大厂以及掘金、IT 大咖说、异步社区、华章图书等合作媒体赞助的一场热闹非凡的技术盛会,探探第五届 GopherChina 圆满结束了,与会人数超过 **1000 **人。
2009 年的 11 月 10 日,Go 语言以开放源代码的方式向全球正式发布,截止到 2019 年,已经有超过 1680 个贡献者为该项目的 34 个存储库完成了超过 50,000 次提交。由于 Go 是第一个开源的语言,我们已经更新迭代了 10 个版本。同时,线下活动也在积极的展开,Go 语言大会和用户组遍布全世界。
2015 年由 Go 中国社区发起的第一届 Gopher China 大会在上海成功举办,历时四年已成为国内最权威和最干货的 Go 大会,GopherChina 大会致力于为中国广大的 Gopher 提供最好的交( mian )流( ji )平台。举办 Gopher China 大会的目的是汇集广大 Go 语言的开发者以及大规模应用 Go 的示范企业给大家带来精彩分享,呈现一场最 cool 的技术盛会。
GopherChina 大会举办至今,在业内获得了良好的口碑,被公认是最具实力、最具干货的线下技术盛会。
4 月 26 日,国际知名讲师 Dave Cheney 受邀在大会前一天就给报名参加培训的 Gopher 进行了深度的培训,本次会前培训 Dave 分享的主题是高性能 Go 研讨会,分享话题围绕着 1. 微处理器性能的过去、现在和未来; 2. 基准测试; 3. 性能测量和分析; 4. 编译器优化; 5. 执行跟踪程序; 6. 内存和垃圾收集器; 7. 提示和回顾展开,培训结束后,Dave 为每一位参加培训的同学都颁发了自己亲笔签名的课程结业证书。
4 月 27 日早上 9:00 大会正式开始,GoCN 社区发起人兼历届大会的主办负责人 Asta 进行了开场致辞,他说到:“转眼间,GopherChina 大会我们已经举办第五届了,感谢大家在百忙之中来参加的大会,给大家汇报一下 Gopher China 组委会在过去一年我们做的一些事情。过去一年的时间里,继在上海举办了第四届 Gopher China 大会之后,我们后面在各个城市举办了 Gopher Meetup 活动,从去年的 5 月份开始到 12 月结束,我们一共跑了 4 个不同的城市,办了 5 场 Gopher Meetup 活动。今年 GopherChina 大会结束后,我们将争取把 Gopher Meetup 活动扩展到 10 个城市。”
Go 在很多地方逐步用起来,很多地方需要线下交流的平台。Gopher China 活动最先是当作社区的活动在搞。希望在国内用 Go 的人越来越多,希望搭建平台,让大家很好交流技术。从第一届到今年的第五届,GopherChina 大会不仅是从人数上有增加,大会 topic 涉及的领域也逐步在扩展。
每年的 GopherChina 大会举办前,GoCN 社区组委会都会对外公布招募讲师,历年来报名的讲师都非常的多,大家很想来这个平台进行技术交流,通过分享一些自己在 Go 运用方面的一些经验或者是踩过的一些坑,通过这些技术实践来告诉大家使用 Go 的一些技巧,充分利用 Go 的特性为广大的 Gopher 带了更多的技术干货以及编程技巧。
接下来就来回顾一下 GopherChina 2019 大会的干货内容,在两天的时间里,GopherChina 2019 与会讲师一共分享了 16 个主题,下面是 2019 GopherChina 大会嘉宾分享回顾。
大型微服务框架设计实践大型微服务框架设计实践
主讲人:滴滴出行 /R lab 高级专家工程师-杜欢
内容概要:
从框架配置->约定->DSL->容器化,引入“操作系统”的概念,表述说现在的服务框架,正越来越向操作系统的方向发展。通过这个分享,基本能对 Golang 的微服务框架所必须的特性都有很好的了解。
如何用 Go 打造高性能路径规划和 ETA 引擎
主讲人:Grab 地图团队资深架构师-胡泊
内容概要:
主要描述的是 Grab 地图团队中使用 Golang 做了哪些事情。Grab 在轨迹处理这块的一些优化点,比如对数据进行压缩,将数据存储分离,创建缓存层,引入大数据 spark streaming 处理等。后续又展示了路径规划和 ETA 的算法逻辑。
TiDB 的 Golang 实践 TiDB 的 Golang 实践
主讲人:PingCAP TiDB/tech lead-姚维
内容概要:
首先是介绍了 TiDB 的 SQL 处理层的模型结构。随后聊到了分布式系统的测试,描述了一下 FailPoint 的测试注入。再后面,就说到了 TiDB 是如何使用 Chunk 结构来存储表数据的。
How to write testable code
主讲人:Heptio /资深工程师-Dave
内容概要:
基本上 Dave 的整个 Topic 是在告诉大家如何进行单元测试,如何看测试覆盖率,测试的重要性,如何才是合理的测试用例。基本上他也是建议使用现在比较流行的数组测试,一个大数组中存储不同的输入,输出,然后对这个大数组循环判断输入是否能产生期望输出。
o 业务基础库之 Error & ContextGo 业务基础库之 Error & Context
主讲人:bilibili/资深架构师-毛剑
内容概要:
毛老师的主题是从业务框架的角度来说,B 站是如何处理 Error 和 Context 的。关于 Error,首先是使用 WithStack 保存堆栈信息,以方便查找根因。并且详细告诉我们 B 站的大仓库是如何处理 error 的规则的。Context 其实算是一个老生常谈的话题了,但是毛剑总结了很多实际使用中的最佳实践,分享内容还是诚意满满的。ntext 等都是很好的 B 站实践总结。最终总结了下业务基础库的思考。
Go 同步和并发设计模型
主讲人:微博研发中心平台架构部分 /资深架构师-晁岳攀
内容概要:
从源码级别探究 Go 在并发层面的基础库实现。跟去年的深入 CGO 编程一个风格,内容非常全面和丰富,有细节有深度。如果想深入 golang 源码,一定不可以错过。主要是做了一下 Golang 中锁、并发处理、内存模型的梳理,每一个板块都讲的很细。
百度 App Go 语言实战
主讲人:百度 APP 技术平台部 /资深研发工程师-陈肖楠
内容概要:
首先百度对内部项目都会有一个工程能力评估图,对代码规范、测试、上线等流程都有自己的评估标准。其次介绍了一下百度内部对开发规范,开发工具,代码规范的介绍。比较有干货的是介绍了一下在实现开发框架 server 遇到的点,比如创建了一个 goroutine 池来控制 goroutine 的数量。server 端出现 TIME_WAIT 过多问题的处理。而后介绍了一下百度的构建体系,如何自建镜像等。具体的实现逻辑没有细想,不过感觉百度内部为了保证 golang 的代码交付质量,做了很多工作。最后还介绍了百度的代码检查工具,基本上也是使用 AST 解析代码,并和规则匹配来检查的。
用 Golang 搭建实时音视频云
主讲人:iTutorGroup/研发总监-董海冰
内容概要:
golang 在 WebRTC 协议的服务端实现。首先是例行解释下为何技术选型使用 golang,而后对 WEBRTC 的协议进行了说明,接着大致说了一下他们实现的具体架构,和他们遇到的问题。
比较有印象是他们遇到的问题。他们整个团队是之前各种语系的人都有,于是出现各种错误,比如阻塞 for 循环 select 的问题,比如日期格式化的问题,比如依赖库版本问题。
基于 MINIO 的对象存储方案在探探的实践
主讲人:探探 /工程师-于乐
内容概要:
用 golang 撸了一个支持多集群的分布式对象存储系统。从接到需求,技术选型,技术调研,部署,遇到问题,分析,尝试,最终解决方案。就好像跟着讲师一起从零搭建了一套对象存储系统,非常精彩。确实大量的小文件存储系统的设计和使用是很难的一件事情。
从零开始用 GO 实现 Lexer & Parser
主讲人:英语流利说 /Platform Tech Lead-何源
内容概要:
介绍了使用标记语言来代替表单录入,使用 git 进行提交管理,并且使用 CI 进行提交测试,解决有一堆做教研的人员需要录入大量题目,但是他们觉得使用 Web 页面录入效率太低,并且一旦修改,没有版本记录问题。
高性能高可用的微服务框架 TarsGo 的腾讯实践
主讲人:腾讯 /TARS 开源团队核心成员-陈明杰
内容概要:
讲解了一些实用的,在开发 Tars go 过程中他们注意到的点,比如尽量不用反射,尽量使用指针返回数据,如何优化 Timer,使用 sync.pool 来缓存临时对象。这些在实际 coding 中都是要注意的点。这么庞大的一个框架,涵盖服务框架,服务治理,部署运营,调度等集于一身,也只有超级大厂能有此等人才和人力了。
闪电网络-BTC 小额支付解决方案
主讲人:starcoin/核心工程师-方圆
内容概要:
今年分享和区块链相关的,先简单介绍了 BTC,还有对于闪电网络进行基本的介绍。介绍基本原理,基本原理是除了你需要了解的 BTC 这些东西之外,你需要有一个基本的了解。接下来是介绍 LND,这个是闪电网络 Go 语言的实现,闪电网络本身实现很多种,但是官方选择用 Go 语言实现的 LND,最后是支付流程,闪电网络到底怎么跟之前的基本原理结合起来。
Using Go Modules in everyday life
主讲人:JetBrains/Developer Advocate-Florin Patan
内容概要:
Florin Patan 语速较 Dave 稍快一点,分享过程中有一位他的台湾同事进行全程翻译。首先介绍了下 GoMod。然后就是对 GOLAND 的使用,这个过程让场下不少人都感叹:我们平时用的是 Goland 吗?
用 Go 构建高性能数据库中间件
主讲人:小米商城系统组 /基础服务高级研发工程师-徐成选
内容概要:
首先简单介绍 Go 在小米的一个使用情况。数据库中间件 Gaea 的介绍,以及一些 Go 有关的几个技术点的分享。关于 Go 的 Runtime 的使用情况;再一个 Go 的工具链下使用的情况;最后说一下针对中间件尤其替换内部的项目,我们是怎么来做测试的,包括单元测试还有集成测试。
花椒直播基于 golang 的中台技术实践
主讲人:花椒直播 /技术总监-周洋
内容概要:
讨论花椒直播在不同情境下对技术中台技术栈选型的思考。然后讨论的是中台应该做什么。在洋总眼中的中台是以业务高效为原则而高度定制化的。很接地气的说法,能让业务好好跑的中台就是好中台。而后介绍了他们给业务做的一些中台服务,gokeeper ,总线服务,cron 任务管理服务等。
知乎社区核心业务 Golang 化实践
主讲人:知乎 /后端工程师-杜旭
内容概要:
讲述的知乎在转语言重构过程中的一些实践经验。讲述了整个重构过程也是中规中矩的,创建新服务,然后测试,测试完成了,切流量。最终的重构结果是喜人的,节约了 80%的服务器资源。
各个主题都有自己的特色,这些主题有大到说框架,也有小到说具体的某个包的使用的。这些分享内容都足以让参会的听众能得到足够多的干货,大会刚刚落幕,“ Go 中国”公众号就在第一时间分享了本次大会讲师 PPT,到场的 gopher 们都为 GoCN 组委会的效率惊叹!
听完两天的技术干货,Gopher 们都感觉收获颇多,大会还没有结束,就有很多参会的 Gopher 分享了自己参会后的感想。很多人在刚接触 Golang 的时候都是抱着试一试的心态,现在看来,这么多的公司在实际项目中都用到了 Golang,这足以说明 Go 未来在各个领域有着非常好的发展趋势。
本次活动的圆满结束,GoCN 组委会对所有参会者表示衷心的感谢,感谢现场所有的讲师、工作人员、展商以及大会志愿者的辛苦付出,因为有你们,才会有如此成功的 GopherChina 2019,今年的 GopherChina 大会虽然结束,接下来我们还有全国巡回的 Gopher Meetup,请持续关注 GoCN 官网动态以及“ Go 中国”公众号,活动相关信息将第一时间 get 到。
GopherChina 2019 大会干货非常多!大牛非常多,不仅讲师强,听众也是卧虎藏龙。
@所有人
GopherChina 2019 北京大会干货 PPT 下载地址:
https://github.com/gopherchina/conference
再次邀请大家在知乎上对本次大会进行了评价:
更多关于Golang Go语言活动精彩回顾|GopherChina 2019 干货回顾的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
有视频么
更多关于Golang Go语言活动精彩回顾|GopherChina 2019 干货回顾的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html
坐等视频合集啊。。求分享