摘要:
基本架构 区别 block or no block block 的使用场景为 c <- x not block 的使用场景为 select{ case c<-x{ foo.. } default{ bar.. } } 有无缓存队列 缓存队列用于临时存储的消息,相当于队列的实现使用环形数组实现,最终表 阅读全文
摘要:
本质上是循环、索引查询、缓存三个因素决定的 Nested-Loop Join 嵌套循环联接算法(NLJ) 当然了,MySQL 优化器其实会对驱动表有一个选择的过程,并不会固定说就是 user 或者就是 depart,为了便于下面的分析,我们可以用 straight_join 来固定驱动表,左侧为驱动 阅读全文
摘要:
GoLang Context 介绍 在开发大型应用是,尤其是服务器软件中,有时除了函数自身工作所需的信息之外,了解更多关于它正在执行的环境的信息是有帮助的。例如,web服务器器函数正在处理特定客户端的HTTP请求,则该函数可能只需要知道客户端请求那个URL来提供相应。该函数可能只将该url作为参数, 阅读全文
摘要:
golang,:= 阅读全文
摘要:
MVCC MVCC(Multi Version Concurrency Control)是在并发访问数据库是,通过对数据做多版本控制,避免因为写数据是要加写锁而阻塞读取请求,造成写数据无法读取数据的问题。 通俗的将就是MVCC通过保存数据的历史版本,根据对比数据的版本号来决定数据是否显示,在 阅读全文
摘要:
Golang map数据类型与数组类型表现不一致 var fooMap map[string]string var barSlice []string func main(){ fooMap['a'] ="str1" // nil pointer panic barSlice =append(bar 阅读全文
摘要:
Golang 特殊作用域 特别对于error来说 func getAnErr()error{ return errors.New("get an error") } func main(){ err := getAnErr(); if err{ exit(0) } // err can be := 阅读全文
摘要:
Golang Channel 阅读全文
摘要:
EPOLL解析文章:http://www.pandademo.com/2016/11/linux-kernel-select-source-dissect/ EPOLL源码地址:https://github.com/torvalds/linux/blob/master/fs/select.c POL 阅读全文
摘要:
python项目管理器,宝塔面板,django 阅读全文