综合编程 2018-06-18

concurrency in go 读书笔记

《concurrency in go》这本书出版于 2017 年八月,里面有些观点还是蛮新颖的,烂大街的我就先不写了,重点写写书里提到的,我之前忽视的观点,以及一些奇技淫巧。 锁的……
综合编程 2018-06-17

Go 系列文章4 : 调度器

推荐用 stackedit 导出后看,文章中有不少 mermaid 图表,ghost 博客不支持展示。原始的 markdown 保存在: 这里 写得稍微有点乱,主要是按自己看代码的顺序来记……
综合技术 2018-06-07

GO语言学习笔记-互斥锁

在说互斥锁前,理解并发编程中的临界区(Critical section)是十分重要的。当一个程序并发执行时,共享资源不应该在同一时刻被多个goroutine修改。这段修改共享资源的代码……
综合编程 2018-06-07

GO语言学习笔记-互斥锁

在说互斥锁前,理解并发编程中的临界区(Critical section)是十分重要的。当一个程序并发执行时,共享资源不应该在同一时刻被多个goroutine修改。这段修改共享资源的代码……
综合编程 2018-06-05

PouchContainer Goroutine Leak 检测实践

0. 引言PouchContainer 是阿里巴巴集团开源的一款容器运行时产品,它具备强隔离和可移植性等特点,可用来帮助企业快速实现存量业务容器化,以及提高企业内部物……
综合编程 2018-06-04

GO语言学习笔记-Channels

channels可以理解成是goroutine之间通信的管道,和水流从管道的一端到另一端类似,数据也可以从管道的一端发送另一端接收。 声明channels 每个channel都需指定一个类……
综合技术 2018-06-04

GO语言学习笔记-Channels

channels可以理解成是goroutine之间通信的管道,和水流从管道的一端到另一端类似,数据也可以从管道的一端发送另一端接收。 声明channels 每个channel都需指定一个类……
综合技术 2018-05-19

Go 语言常见坑

附录A:Go语言常见坑 这里列举的Go语言常见坑都是符合Go语言语法的, 可以正常的编译, 但是可能是运行结果错误, 或者是有资源泄漏的风险. 数组是值传递 在函数调用参数中……
热门推荐 2018-05-19

Go 语言常见坑

附录A:Go语言常见坑 这里列举的Go语言常见坑都是符合Go语言语法的, 可以正常的编译, 但是可能是运行结果错误, 或者是有资源泄漏的风险. 数组是值传递 在函数调用参数中……
存储架构 2018-04-22

Go实现海量日志收集系统(三)

再次整理了一下这个日志收集系统的框,如下图 这次要实现的代码的整体逻辑为: 完整代码地址为: https://github.com/pythonsite/logagent etcd介绍 高可用的分……
综合技术 2018-04-18

美好或者丑陋的 Go

这是一个“ Go不好 ”系列的额外文章。Go确实有一些不错的特性,也就是本文中“好的”部分,但是当我们不使用API或者网络服务器(这是为它设计的)而且将它用于业务领……
综合编程 2018-04-18

美好或者丑陋的 Go

这是一个“ Go不好 ”系列的额外文章。Go确实有一些不错的特性,也就是本文中“好的”部分,但是当我们不使用API或者网络服务器(这是为它设计的)而且将它用于业务领……
综合技术 2018-03-27

Go Channel 应用模式

Channel是Go中的一种类型,和goroutine一起为Go提供了并发技术, 它在开发中得到了广泛的应用。Go鼓励人们通过Channel在goroutine之间传递数据的引用(就像把数据的owner……
综合技术 2018-03-21

记fastHTTP协程池的实现

golang的net/http包实现了处理连接时比较简单粗暴,相比之下有性能更好的http库,项目里用到过的 fasthttp 就是一个很好的实现, Go开发HTTP的另一个选择fasthttp……
综合技术 2018-03-20

对一段Go语言代码输出结果的简要分析

年后事情实在是多,各种被催进度,于是好长一段时间未更博客了,自责中….。今天蹦出来热热身^0^! 中午在微博私信中看到一封来自某Gopher的咨询,他贴了一段代码,并表示……
综合技术 2018-03-14

Golang 新手可能会踩的 50 个坑

原文: 50 Shades of Go: Traps, Gotchas, and Common Mistakes ,翻译已获作者 kcqon 授权。 不久前发现在知乎这篇质量很高的文章,打算加上自己的理解翻译一遍。文章……
综合技术 2018-03-10

Kubelet数据源的合并

Kubelet的功能简单总结就是根据系统中pod的变化,来处理pod的生命周期。它向下通过底层docker等接口处理pod的启动 更新停止,它向上通过list watch获取pod的信息来做任务……
综合技术 2018-03-09

Primer on Go Assembly

Chapter I: A Primer on Go Assembly Developing some familiarity with Go's abstract assembly language is a must before we can start delving into the implementat……
综合技术 2018-03-06

Golang 获取 goroutine id 完全指南

在Golang中,每个goroutine协程都有一个goroutine id (goid),该goid没有向应用层暴露。但是,在很多场景下,开发者又希望使用goid作为唯一标识,将一个goroutine中的函……
综合技术 2018-03-02

Show: goroutine local storage

goroutine local storage https://sourcegraph.com/github.com/modern-go/gls?badge http://godoc.org/github.com/modern-go/gls https://travis-ci.org/modern-go/gls ……
综合技术 2018-01-27

写Go代码时遇到的那些问题[第2期]

第1期的“写Go代码时遇到的那些问题” 一经发布后得到了很多Gopher的支持和赞赏,这也是我继续写下去的动力!不过这里依然要强调的是这一系列文章反映的是笔者在实践中对……
综合技术 2018-01-05

Go学习整理笔记

最近整理一下Go学习中的一些要点,包括Go性能优化及底层源码要点,作此笔记,巩固基础。 一、并发 1、Go语言的goroutine类似于线程和协程的综合体,能最大限度提升执行效……