当红语言只认Go!趣头条技术沙龙聚焦Golang应用热点

时间:2019-08-13 来源:www.torrentbasket.com

?

4月13日,Fun Header和Priest Technology在上海举办了第一届Go Language Technology沙龙。 Golang在工程实践中的应用。虽然这只是一场持续半天的技术沙龙活动,但参与者的热情以及从沙龙带回的收益和情绪远远超过了活动本身。一些参与者在现场报道,如果他们没有参加沙龙,他们真的感觉不到。原来的Go语言在中国非常热门,所以在开发者小组中它非常好吃!

自2009年Go语言发布以来,仅仅十年了。其天然的一致性,内置GC,高安全性,简单的语法,快速编译和众所周知的名称使越来越多的大公司使用Go语言来重建其后端基础架构和服务。

img_pic_1555384872_0.jpg

img_pic_1555384872_1.jpg

img_pic_1555384872_2.jpg

座位不足以坐下,站立和倾听。

该技术沙龙从实际生产业务开始,注重企业中Go语言的应用程度,并注重Go中讲师的实践。因此,三位高级建筑师从国内深入应用Go语言互联网工厂有趣的基础设施部门建筑师徐鹏,齐牛云大数据团队建筑师刘凯,以及bilibili主站技术中心研发工程师曹国良,立足于深了解Go语言,深入分享了Go语言中自己公司的实践。

以下是本次技术会议上三位演讲嘉宾的精彩回顾:

新闻实践中

第一轮现场分享是由标题基础设施部门《自研 Service Mesh 的实践》的建筑师徐鹏带来的。

img_pic_1555384872_3.jpg

有趣的标题基础设施建筑师徐鹏

在演讲中,徐鹏首先介绍了服务网的演变。

img_pic_1555384872_4.png

然后徐鹏专注于基于Go语言的Mesh Negri系统服务。

img_pic_1555384872_5.png

内格里建筑图

自主开发的服务Mesh Negri具有以下六个主要特征:

与语言无关,无需开发多套不同的语言框架,PHP,Golang,Java甚至Node.js,Python都可以访问;

维护成本低,框架维护成本高,DRY可能导致大面积故障,升级成本高;

服务注册发现slb部署链接被省略,服务节点更改可以自动发现;

服务治理,限流,融合,降级,跟踪,指标,日志错误注入;

一个图形控制面板,提供统一的UI,控制服务治理的各种配置,并显示服务的指标,线索,日志和呼叫关系;

支持自主开发的业务,支持abstest,trace,auth,加密和解密以及签名验证等功能。

随后,徐鹏主要阐述了内格里的发展历程,最佳实践和未来发展方向。

img_pic_1555384872_6.png

最后,徐鹏介绍了Negri的未来发展计划,包括:

兼容xds协议并支持Istio作为控制平面;

支持Redis,MySQL,Nsq,Kafka协议,并可以进行限流和吹气等活动;

服务授权身份验证,通过在服务之间发出调用规则/Appsecret,使服务之间的调用更加安全。

进入七牛全程链接跟踪的实践

第二轮分享来自齐牛运大数据团队的建筑师刘凯。他带来的共享主题是《Go 在七牛全链路追踪中的实践》。

img_pic_1555384872_7.jpg

刘牛大数据团队建筑师刘凯

首先,刘凯详细解释了全链路跟踪技术,包括全链路跟踪技术的起源,Opentracing,业界主要产品等。

img_pic_1555384872_8.png

然后详细介绍了七头牛的完整链接跟踪。在七腿全链路跟踪的功能特性方面,刘凯还详细阐述了包括:传输优化,服务拓扑,接入成本和可视化显示。

img_pic_1555384872_9.png

最后,刘凯演示了如何使用完整链接跟踪模块反向监控Go项目。第一个是用户的业务,黑色是跟踪器模式,然后是中间跨度,然后是采集模块,现场恢复真实效果。手动演示传递代码的方式。

img_pic_1555384872_10.png

进入bilibili微服务治理

最后一个人是bilibili硕士技术中心的高级研发工程师曹国良。他的共同主题是《Go 在bilibili微服务治理中的实践》。

img_pic_1555384873_11.jpg

曹国良,bilibili硕士技术中心高级研发工程师

曹国良首先初步了解了微服务带来的挑战,并介绍了最初的CP服务发现系统 ZooKeeper。

img_pic_1555384873_12.png

Zookeeper架构图

然后详细介绍bilibili AP服务发现框架 Discovery。 Discovery服务发现系统主要有三个特征:确保节点信息的最终一致性,网络分区的自我保护和客户端实例更改。

img_pic_1555384873_13.png

同时,负载平衡是微服务的一个非常重要的部分。曹国良在bilibili中介绍了负载均衡的前两个阶段。由于性能无法满足快速业务增长的需求,因此bilibili基于前两个版本。还介绍了负载均衡3.0,主要优化点如下图所示:

img_pic_1555384873_14.png

最后,曹国良介绍了微服务中“保险丝和电流限制”的应用,并回顾了Go用于实现该框架的原因。

精益咖啡会议:对Go的生活和未来的深入讨论

这个沙龙和普通人只是从听众的角度来接收技术干货的差异。这个沙龙介绍了精益咖啡链接,它有一套[Go工程实践],[大并发和大流量Go实践,[Go in the industry and application]和[Go's future prospects]这四个主题,每个参与者都可以选择他们感兴趣的主题是与网站的小伙伴讨论。

img_pic_1555384873_15.png

img_pic_1555384873_16.jpg

img_pic_1555384873_17.jpg

我们的讲师也积极参与每个人的讨论

最后,每个小组派出一名代表分享舞台。从输出的结果来看,每个人的讨论都非常有效,而来自标题的凯文选择了“最具价值共享”奖。

img_pic_1555384873_18.png

以Go为焦点,这个技术沙龙凝聚了对Go充满激情和研究兴趣的本地开发人员。每个人都相互了解并探索它。它已经迈出了另一步,学习最尖端的技术应用并扩展他们的社交圈。

img_pic_1555384873_19.jpg

现场参与者的大型合影照片

img_pic_1555384873_20.jpg

三位教师还获得了定制证书

引用精益咖啡中技术大牛的热词:七头牛是中国Go语言的专家,但希望多年后,Go语言在中国,无论七头牛和八头牛,最终都会去Go牛!