分类 代码 下的文章

TCP 为什么要三次握手

为什么 TCP 连接需要三次握手(Three-Way Handshake)原文从这篇文章学习到为什么三次握手而不是 2 次。TCP 的定义:用于保证可靠性和流控制机制的数据,包括 Socket、序列号以及窗口大小。TCP 建立连接时通过三次握手可以有效地避免历史错误连接的建立,减少通信双方不必要的资源消耗,三次握手能够帮助通信双方获取初始化序列号,它们...

限流算法

文章地址为什么限流,因为单一用户占用过多资源导致其他用户的服务质量。好处:防止资源耗尽降低服务器托管成本提供针对 DDos 的基本保护1. 令牌桶桶中保存固定数量的令牌令牌以固定速率添加到存储桶中收到请求如果令牌可用,则会将其从存储桶中删除并允许请求。如果没有可用的令牌,则请求将被拒绝或延迟。如果令牌可用,则允许偶尔进行短暂的突发type TokenB...

查找内存泄露

1. 定位泄漏点在需要分析的线程中开一个协程监听go func() { tlog.Infof("pprof http server listening on: %v", 28001) err := http.ListenAndServe(addr, nil) if err != nil { ...