第五届 Gopher China 大会将于2019年4月26日-4月28日在北京市海淀区朗丽兹西山花园酒店举办,Gopher China 大会目前是国内最大规模,最专业的 Go 语言线下技术交流大会。大会聚集了全国各地的 Gopher 一起进行 Go 语言的学习与交流。通过国内外 Go 语言届的大神给大家带来技术的分享,实时了解Go 的动态、应用场景以及技术实践的细节等等。
会前将对我们本次大会的讲师一一做专访,方便我们的 Gopher 朋友们通过讲师专访也能 get 到大神们在 Go 方面的技术理念。下面是来自微博平台研发中心架构组/资深架构师-晁岳攀的专访。
1、简单介绍下自己和您现在的工作
我是晁岳攀,是微博平台研发中心架构组的资深架构师。我先后在清华同方、摩托罗拉、Comcast 的中间件、视频广告平台等研发工作,加入微博平台研发中心架构组后先后从事服务发现和服务配置平台 vintage、微博新一代的消息中间件 qservice 的研发,目前负责微博基于区块链技术的中国版权链的研发工作。
2、回忆一下与 Golang 的渊源,和 Go 结缘是什么时候?用 Go 语言实现的第一个项目是什么?运用 Go 语言截止到目前,对它最深刻的印象是什么?
在2013年时候,我们的创业公司还没有被美国 Comcast 收购,那时候和 Comcast 合作的时候公司已经开始使用 Go 写一些测试工具,逐渐被 Go 的简单易用性所吸引,也了解了 Go 做 web 开发的巨大优势。虽然 Go 本身提供了 rpc 库,后来也有 grpc、thrift-go 的出现,但是相对于 Java 生态圈拥有 dubbo、motan 等优秀服务治理的框架,我看到 Go 生态圈还没有一个成熟的 rpc 服务治理框架,所以从2016开始,我开始开发 Go 第一个全面服务治理的 rpc 框架 rpcx。
Go 最大好处是简单,开发快,将复杂的并发程序开发以简单的方式表现出来。同时,尤其最近几年,Go 的生态圈越来越壮大,很多优秀的库都涌现出来,进一步推动 Go 语言的传播。
3、2009年诞生至今,Go语言基本统治了整个云计算领域,作为最专业的Go语言专家,您认为这是由于它的哪些优雅的特性?Golang未来还会有什么样的改进和突破?Go和其他语言相比最明显的优势是什么?
Go 的特性是:简单,可以优雅地编写并发程序。Go 既适合开发系统工具,也适合互联网后台软件的开发。最令人期待的是它将要增加的泛型。虽然泛型一定程序上降低了程序的可读性,但是给程序的抽象和简化带来了便利型,我相信泛型推出后会有一大批的优秀的基于泛型的库出现,尤其是集合类这个领域。
4、您是否有关注往届 Gopher China 大会,对往届 Gopher China 大会的风格以及内容的印象是怎样的?希望这届 Gopher 大会加入什么新鲜元素?
每一届的 Gopher China 大会我都会关注,Gopher China 带有鲜明的中国技术大会特色,我个人比较关注语言层面的分享,也特别希望能有一些创业成长型的公司分享 Go 带给他们开发的好处。
5、对于一些即将毕业的,特别是对自己未来就业一片迷茫的 gopher,在他们未来的求职道路上有什么建议?
保持对Go的热情,持续关注新技术的发展,寻找有价值的平台,在实践中锻炼自己。
6、现在很多企业项目都在准备转Go,对于这些项目的负责人有没有建议和经验分享?
对于新创业的公司,建议后台直接采用 Go 生态圈,但是对于以其它语言为主的公司,比如 Java, 转型有一定的难度,因为需要人员编程技术的改变、技术积累的切换、生态圈的支撑等等。但是可以从新的项目、独立的产品线入手,逐步进行切换。
微博的 Vintage 是为所有的微博 Motan 服务提供服务发现和配置的平台,原先使用 Java 开发,从前年开始我们使用 Go 重新进行开发,抛弃了很多的历史包袱,但是又提供向下兼容的服务接口,所以 Java Motan 服务根本感知不到,通过去年一年的逐步切换和提升,顺利的支撑了所有的 Motan 服务。
7、百忙之中,是什么原因促使您莅临本次大会?你对本次大会可能没法到现场的 gopher 朋友有什么想说的?
通过分享,可以让一个人的知识变成成百上千万的知识,成百上千人的分享,可以变成成千上万的知识。只有在不断地学习和分享中,我们才能成长。
即使因为某些原因没能来现场的朋友,也可以关注本次大会,了解大家分享的主题,将来有机会参加后来的大会。
8、选择一位 GO 语言大神作简单评价,目前和您在技术上交流最多的GO 语言大神是谁?
Brad Fitzpatrick 是 memcached 作者,也是 Go 开发组的成员,目前负责 Go http 相关库的开发。性能优秀的 memcached 带给我们的好处自然不必说,持续的开发http/http2 库,这种持续的打磨产品的精神令人钦佩。
Ian Lance Taylor, Go 核心语言的开发者,gccgo 的作者,也是我非常钦佩的牛人。当我有一些对 Go 语言底层的疑问时,我会发一些帖子在论坛上,Ian 总是在第一时间回复,而且很详细的解答。
9、对于本次大会上您分享的主题简单介绍一下
这次我主要分享一些关于 Go 同步原语的 hack,Go 语言不包含的同步原语, happens-before, channel 的一些应用模式等等。
Gopher China 2019 最新资讯:
【重磅】Gopher China 2019 大会讲师及议题揭晓
重磅!会前一天培训讲师揭晓:Dave&William
还没来得及报名?没关系,戳下方“ 阅读原文 ”即可报名!