GopherChina 2019大会4月底刚刚结束,大会上使用的PPT也放了出来(大会情况及PPT在https://mp.weixin.qq.com/s/_oVpIcBMVIKVzQn6YrkAJw)。趁着五一假期,对大会的PPT做了一个简要分析;

滴滴

大会的第一场压轴嘉宾是滴滴杜欢。从PPT透漏出的go语言的应用规模,我觉得滴滴在这方面投入确实不小;分享的这个架构,应该很牛B。先进的微服务理念,完善的服务治理,动态扩容,问题定位,性能压测,监控。其中还有比较暴力的协议拦截,防雪崩等;总之就是一个框架很完善,业务隔离的很彻底,零故障的微服务大型框架;我有几个前同事,现在在滴滴,从侧面也打听了一下,滴滴确实有大规模使用go语言,但是最近几年,也在使用Java作为一个补充语言;总之,滴滴在go生态方面,算是走了大厂的前面。据我了解,阿里,百度和腾讯都还没有把go语言如此大规模地应用;

grab

第二个嘉宾是grab公司,看描述是一个主要市场在东南亚的超级APP公司(类似美团?),主要分享了用go语言进行路径规划的案例。对这个公司不是很感兴趣,可能这个公司的核心应用也是go语言,所以放到了第二个;

pingCAP

第三个是pingCAP公司,主要分享内容为如何构建一个稳定的数据库产品,在go语言方面的一些优化技巧。据我了解,这是一家创业公司,核心业务就是TiDB,一个非常容易扩展的database,兼容Mysql协议,目前我们公司就使用了TiDB。

总结

其实后面的分享就没有什么特别大的参考价值,除非你真的在使用go语言。总结起来有三点,

1、从这些分享主题可以看出,一些大的公司,如BAT,都已经开始小范围试水golang。

2、一些新兴的公司,如B站(主要源于前段时间代码泄漏得出的结论,这次分享并没有B站,但是在2017年有哔哩哔哩的 Go 微服务实战),探探,pingCAP都已经在核心业务大规模采用go语言;这里面还有小米使用go语言构建了一个db中间件的分享,但从我同学那边了解到,小米的核心语言还是Java;

3、golang依然任重道远,在构建企业生态方面还有很长的路,这个从这些分享中就可以看出,因为大部分人都在分享造轮子,踩坑,优化和实践等主题;

个人观点

我本人虽然是Java开发者,但其实一直对go语言情有独钟;首先是因为他是google出品,技术质量有保证;其次,它诞生的比较晚,大概在2009年;其实,你对语言了解的越深刻,你越发现,为了兼容,很多语言背负的历史包袱越重,而新的语言,通常会吸取前车之鉴,有更好的设计理念以及运行起来更好的性能。但是golang诞生之后,并没有出现大家期望的火爆场面,反而后来变的不温不火,这也让我多少有些失望;

关注我的公众号了解更多类似分析;

从GopherChina 2019看当前的go语言的更多相关文章

  1. 2019看雪CTF 晋级赛Q2第四题wp

    上次参加2019看雪CTF 晋级赛Q2卡在了这道题上,虽然逆出算法,但是方程不会解,哈哈哈哈,果然数学知识很重要呀,现在记录一下. 首先根据关键信息,根据错误提示字符串定位到这里: 1 int __t ...

  2. 从linux0.11中起动部分代码看汇编调用c语言函数

    上一篇分析了c语言的函数调用栈情况,知道了c语言的函数调用机制后,我们来看一下,linux0.11中起动部分的代码是如何从汇编跳入c语言函数的.在LINUX 0.11中的head.s文件中会看到如下一 ...

  3. Go语言的9大优势和3大缺点, GO语言最初的定位就是互联网时代的C语言, 我为什么放弃Go语言

    Go语言的9大优势和3大缺点 转用一门新语言通常是一项大决策,尤其是当你的团队成员中只有一个使用过它时.今年 Stream 团队的主要编程语言从 Python 转向了 Go.本文解释了其背后的九大原因 ...

  4. 深度解密Go语言之 scheduler

    目录 前置知识 os scheduler 线程切换 函数调用过程分析 goroutine 是怎么工作的 什么是 goroutine goroutine 和 thread 的区别 M:N 模型 什么是 ...

  5. 《C语言程序设计》课程教学目录

    <C语言程序设计>课程教学目录 不要去精确定义单个论题,应将一整套问题组织成体系.--黎曼(1826-1866)德国著名数学家 教学过程 2018年秋季学期 C语言程序设计I-第一周教学 ...

  6. 【Python五篇慢慢弹】数据结构看python

    数据结构看python 作者:白宁超 2016年10月9日14:04:47 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondoc ...

  7. 【GoLang】转载:我为什么放弃Go语言,哈哈

    我为什么放弃Go语言 作者:庄晓立(Liigo) 日期:2014年3月 原创链接:http://blog.csdn.NET/liigo/article/details/23699459 转载请注明出处 ...

  8. [R]R语言里的异常处理与错误控制

    之前一直只是在写小程序脚本工具,几乎不会对异常和错误进行控制和处理. 随着脚本结构和逻辑更复杂,脚本输出结果的准确性验证困难,同时已发布脚本的维护也变得困难.所以也开始考虑引入异常处理和测试工具的事情 ...

  9. 转 Eric Raymond对于几大开发语言的评价

    原文见:http://blog.jobbole.com/79421/ [译注]:Eric Raymond是开源运动的领袖人物,对于UNIX开发有很深的造诣,主持开发了fetchmail.他的<大 ...

随机推荐

  1. .NET Core跨平台部署于Docker(Centos)- 视频教程

    (双击全屏播放) 往期教程: .NET开发框架(一)-框架介绍与视频演示 .NET开发框架(二)-框架功能简述 .NET开发框架(三)-高可用服务器端设计 .NET开发框架(四)-服务器IIS实践教程 ...

  2. Go语言中初始化变量中字面量&Type{}、new、make的区别

    Go语言中new和make是内建的两个函数,主要用来创建分配类型内存.在我们定义生成变量的时候,可能会觉得有点迷惑,其实他们的规则很简单,下面我们就通过一些示例说明他们的区别和使用. 变量的声明 va ...

  3. Maven环境搭配及继承

    1. Maven简单介绍 Apache Maven是个项目管理和自动构建工具,基于项目对象模型(POM)的概念. 作用:完成项目的相关操作,如:编译,构建,单元测试,安装,网站生成和基于Maven部署 ...

  4. Java生鲜电商平台-一次代码重构的实战案例

    Java生鲜电商平台-一次代码重构的实战案例 说明,Java开源生鲜电商平台-一次代码重构的实战案例,根据实际的例子,分析出重构与抽象,使代码更加的健壮与高效. 1.业务说明 系统原先已有登录功能,我 ...

  5. MySQL基础(四)(子查询与链接)

    1.子查询简介 其中,所谓的“外层查询”并不是指“查找”,指的是所有SQL语句的统称:结构化查询语言(Structured Query Language),简称SQL. : 2.由比较运算符引发的子查 ...

  6. maven 学习---Maven Web应用

    本教程将教你如何管理使用Maven版本控制系统管理一个基于Web项目.在这里,将学习如何创建/构建/部署和运行Web应用程序: 创建Web应用程序 要创建一个简单的java web应用程序,我们将使用 ...

  7. JavaWeb项目——博客系统

    系统介绍 博客是互联网平台上的个人信息交流中心.通常博客就是用来发表文章,所有的文章都是按照年份和日期排列,有些类似斑竹的日记.看上去平淡无奇,毫无可炫耀之处,但它可以让每个人零成本.零维护地创建自己 ...

  8. 如何使用Postman发送get请求?

    一.接口测试介绍 接口测试:就是针对软件对外提供服务的接口输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能和接口描述文档的一致性. 接口测试好处:接口测试通常能对系统测试的更为彻底,更高的保障 ...

  9. 13.生产环境中的 redis 是怎么部署的?

    作者:中华石杉 面试题 生产环境中的 redis 是怎么部署的? 面试官心理分析 看看你了解不了解你们公司的 redis 生产集群的部署架构,如果你不了解,那么确实你就很失职了,你的 redis 是主 ...

  10. jq中

    1.jquery位置信息 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...