golang--gopher北京大会(1)
大会感想:牛人真的很能写代码,实现很多功能,而且开源的精品越多,影响力越大,越能过上dream life。比如beego的作者,去了America,进入了Apple。另外,精英们特点是表达能力很强,也能撕逼。比如Golang和Rust性能pk就争论得不可开交。参与这种技术社群真的是让人脑洞大开,记得谁说过那么一句话--不让你感到惊喜的语言不值得学。我想表达的是不让我感到惊喜的会议不值得花钱参加。
好多人从nodejs转向了golang,原因无非在于golang是高吞吐低延迟,适合CPU负载密集型,非中断式的后台加载。而nodejs能很好用于IO密集型的服务,解释执行和动态类型,在单线程加载解释方面会有延迟如JSON编译工作(摘自infoq)。
来个倒叙吧:我只记录我感兴趣的,有些东西我不知道什么意思,纯记录
一、网易云的人分享:
pipeline测试:树莓派+facebook argmented traffic control
cat /proc/sys/net/ipv4/tcp_wmem
##go和nginx lua性能对比测试:
ab -n -c -k "http://127.0.0.1:8081/512b"
二、grabtaxi:
docker优化经验:内存swap off
路由优化经验:
- nethttp->fasthttp
- Pool bufferio Reader/Writer
- Pool conn,buffer
- header struct
- string->[]byte
代码看不懂,上图
代码规范
golint go vet go errcheck goimports gofmt
gometalinter
代码测试
stretchr/testify
rafaeljusto/redisgomock
测试时替换函数指针
不能总来图片,抄写下代码
package main
import "testing"
var realImpl = func() int {
//do something for real
} func TestSomething(t *testing.T) {
defer func(org func() int) {
realImpl = org
}(realImpl)
realImpl = func() int {
return 0
}
//carry on with the testing
}
工作流程
1.好的工作流程
- 让普通的人表现得更牛
- 让牛人逆天
2.糟糕的工作流程
- 普通人想辞职
- 牛人已经辞职了
持续集成
- TravisCI->drone.io->Jenkins
持续部署
- DataDog->NewRelic->Scalyr->Slack
资源和程序一起发布
- https://github.com/jteeuwen/go-bindata
debug性能问题
- pprof
- github prometheus/prometheus
- github tsenart/vegeta
golang--gopher北京大会(1)的更多相关文章
- golang--gopher北京大会(2)(rework)
三.七牛老许 qlang: github qiniu/qlang microservice architecture: http://martinfowler.com/articles/microse ...
- 阿里聚安全受邀参加SFDC安全大会,分享互联网业务面临问题和安全创新实践
现今,技术引领的商业变革已无缝渗透入我们的日常生活,「技术改变生活」的开发者们被推向了创新浪潮的顶端.国内知名的开发者技术社区 SegmentFault 至今已有四年多了,自技术问答开始,他们已经发展 ...
- [Go] 理解 golang 中的 nil
nil是什么 相信写过Golang的程序员对下面一段代码是非常非常熟悉的了: if err != nil { // do something.... } 当出现不等于nil的时候,说明出现某些错误了, ...
- Go语言的9大优势和3大缺点, GO语言最初的定位就是互联网时代的C语言, 我为什么放弃Go语言
Go语言的9大优势和3大缺点 转用一门新语言通常是一项大决策,尤其是当你的团队成员中只有一个使用过它时.今年 Stream 团队的主要编程语言从 Python 转向了 Go.本文解释了其背后的九大原因 ...
- Go语言的前景分析
本文为原创文章,转载注明出处,asdfasdfasdf 欢迎扫码关注公众号flysnow_org或者网站http://www.flysnow.org/,第一时间看后续精彩文章.觉得好的话,顺手分享到朋 ...
- WeX5与阿里内测的Weex与有何纠葛?快来看HTML5开发圈那些逗逼事儿!
4月21日~23日,由infoQ主办的2016 Qcon大会北京站如期举行. HTML5开发已经成为移动开发/前端专题中无可争议的焦点,核心议题已经由前几年的是否该用HTML5转向了如何高性能.高效率 ...
- 2017年IT互联网圈跑会指南~
啦啦啦~要放假啦,还有十多天就要过年啦,要走亲访友啦!相信大家也是各种胡吃海喝后,啊咧~腰上好像多了好几圈o(>﹏<)o为了让小伙伴们及时制定年后行程(减膘)计划,活动家特此奉上2017年 ...
- gmic全球移动互联网大会 全球九站已开启!
由长城会主办的全球移动互联网大会( 简称GMIC)已成长为世界范围内最具影响力的辐射并连结东西半球的移动互联网商务平台,是最大规模的移动互联网行业盛会. 2017gmic全球移动互联网大会北京站将于2 ...
- 全球移动互联网大会gmic 2017为什么值得参加?
长城会CEO郝义认为,"科学产业化将会推动科学复兴,"而本次GMIC 北京 2017也将首次引入了高规格科学家闭门峰会,专门设置G-Summit全球科学创新峰会,以"科学 ...
随机推荐
- 每天一个 Linux 命令(8):cp 命令
cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是在 ...
- xml 解析
例:解析以下片段 <font> <name>Helvetica</name> <size units="pt">36</siz ...
- 引用google的jQuery文件
1. 很多网站都是使用这种方式引入,客户的浏览器可能已经缓存过了 jquery.可以直接调用本地的,速度更快… 2. Google code 使用了 cdn 技术在很多地方有节点服务器,加载 jque ...
- QueryRunner类
该类简单化了SQL查询,它与ResultSetHandler组合在一起使用可以完成大部分的数据库操作,能够大大减少编码量. QueryRunner类提供了两个构造方法: 默认的构造方法 需要一个 ja ...
- GLSL语言基础
from http://www.kankanews.com/ICkengine/archives/120870.shtml 变量 GLSL的变量命名方式与C语言类似.变量的名称可以使用字母,数字以及下 ...
- android 横竖屏切换
解决Android手机 屏幕横竖屏切换 Android中当屏幕横竖屏切换时,Activity的生命周期是重新加载(说明当前的Activity给销毁了,但又重新执行加载),怎么使屏幕横竖屏切换时,当前的 ...
- 查看/修改 Linux 时间和时区
查看/修改Linux时区和时间 一.时区 1. 查看当前时区 date -R 2. 修改设置时区 方法(1) ...
- JAVA 多线程和并发学习笔记(二)
一.Java中创建线程方法 1. 继承Thread类创建线程类 定义Thread类的子类,重写该类的run()方法.该方法为线程执行体. 创建Thread子类的实例.即线程对象. 调用线程对象的sta ...
- NDK 的开发流程
1.NDK开发所需要的工具 windows 需要在windows下的环境 把c代码打包成 手机能用的函数库 首先模拟手机的环境 1 NDK .sh linux 批处理文件 .bat windows 头 ...
- jsp request 对象详解
转自:http://www.cnblogs.com/qqnnhhbb/archive/2007/10/16/926234.html 1.request对象 客户端的请求信息被封装在request对象中 ...