随笔分类 - [10]Golang
摘要:"产生原因" "TIME\_WAIT 状态" "2 MSL 时间" "序列号回绕" "导致问题" "Nginx" "长连接" "参数优化" "复用 TIME\_WAIT 连接" "增加端口数量" "加快回收" "其他" "参考" 产生原因 TCP 连接关闭时,会有 4 次通讯(四次挥手),来确认双方
阅读全文
摘要:"背景" "排查" "推测" "连接超时" "疑问" "http2" "解决超时" "并发连接数" "服务端限制" "真相" "重试" "解决办法" "问题1" 背景 最新有同事反馈,服务间有调用超时的现象,在业务高峰期发生的概率和次数比较高。从日志中调用关系来看,有2个调用链经常发生超时问题。 问
阅读全文
摘要:"1\. 介绍" "2\. 服务端" "3\. 协议头部" "4\. 客户端" "5\. 总结" 1. 介绍 接上次的博客,按照约定的划分,还有一层链路层socket。这一层就可以自定义链路层的协议头部(header)了,下面是目前主流的Ethernet 2(以太网)标准的头部: 相比IP和TCP的
阅读全文
摘要:为了便于后面理解,这里统一称应用数据为 payload,协议头部为 header,套接字为socket。由于平常使用的socket是建立在传输层之上,并且不可以自定义传输层协议头部的socket,约定称之为应用层socket,传输层socket,网络层socket
阅读全文
摘要:1. 背景
2. slice
2.1 内部结构
2.2 覆盖前值
3. string
3.1 重新分配
3.2 二者转换
4. 逃逸分析
4.1 提高性能
4.2 逃到堆上
4.3 逃逸分配
4.4 大小分配
5. 版本差异
6. 结论
6.1 参考 这个回复比原贴有意思,也很有迷惑性。作者测试了下,确实如此,于是和小伙伴们讨论深究下。开始以为应该挺简单的,理解后,发现涉及挺多知识点,值得跟大家分享下过程。
阅读全文