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