Go技术日报(2021-06-03)——Go 重构和转换工具

每日一谚:A language that doesn’t affect the way you think about programming is not worth knowing.” - Alan J. Perlis

go中文网每日资讯–2021-06-03

一、Go语言中文网

  1. Go: stringer 命令,通过代码生成提高效率

  2. 详解并发编程基础之原子操作(atomic包)

二、亚军进化史

  1. Go技术日报(2021-06-02)——从数据库创建 gRPC 服务器

三、新亮笔记

  1. 函数的不定参数你是这样用吗?

四、taowen

  1. 如何不 Review 每一行代码,同时保持代码不被写乱?

五、码农桃花源

  1. 假如 Go 能说话,听听 GMP 的心声

六、CloudNativeCommunity

  1. 直播回放 | Istio 大咖说第 2 期:从微服务架构到 Istio—— 架构升级实践分享

七、polarisxu

  1. 惊!这个 Go 开源项目号称「不改一行代码做秒杀」

八、云加社区

  1. 超全代码!详解Go中内存分配源码实现

九、腾讯技术工程

  1. 十个问题理解Linux epoll工作原理

十、脑子进煎鱼了

  1. 详解 Go 团队不建议用的 unsafe.Pointer

十一、Go招聘

  1. 一文带你由浅入深地解读Zap的高性能

来源: https://studygolang.com/go/godaily

GOCN每日新闻–2021-06-03

1.基于 cdp 协议开发的浏览器自动化工具 rod

2.Go 重构和转换工具

3.开发小应用的 jetbrains 插件 tinygo

3.使用 httputil 反向代理工具将 grpc rest & html 绑定到一个端口上

4.Pre-commit-golang 支持 revive 了

来源: https://gocn.vip/news

gopherDaily–2021-06-03

来源: Gopher Daily

码农桃花源–2021-06-03

文章分享

  1. mvcc

  2. 行格式和行溢出

  3. 白话GPM

面试题

  1. 如何优化 BLOB这类变长大字段

  2. Read Committed隔离级别是如何基于ReadView机制实现的

  3. 背景:我们现在有一张表,每天生成300W数据, 然后每天用delete xx where id = x 这样的方式来删除.
    不用truncate是因为DBA说truncate会重建自适应哈希索引,可能对整个库性能有影响.
    操作:
    这个表的主键id是递增的.
    当我执行 explain select min(id) from t 时,是走的全表扫描.
    而且我目前在从库执行这个sql,直接就卡住了.
    执行 explain select max(id) from t 时, 结果是 Select tables optimized away
    (目前最大id 5亿左右,实际数据量只有300W)

问题:

  1. 为什么 min(id) 会是全表扫描呢? 是和存在大量的delete后未释放空间有关系吗?

  2. 像这种业务场景,mysql怎么处理比较快速呢? 使用rename 表名有什么风险吗?

每日算法

「N叉树的前序遍历」:https://leetcode-cn.com/problems/n-ary-tree-preorder-traversal/

编辑: Amartya 果果
更多内容详见:https://www.yuque.com/qcrao/share/