定时事件与时间轮
在程序中,有许多事件都是定时事件,如定期检测一个连接的活动状态、连接信息等。这些定时事件的数量庞大,因此如何有效的管理这些定时事件对于程序的性能相当重要。
常见的实现管理定时事件的方式有三类:
- 基于链表
- 基于最小堆(树)
- 基于时间轮
在程序中,有许多事件都是定时事件,如定期检测一个连接的活动状态、连接信息等。这些定时事件的数量庞大,因此如何有效的管理这些定时事件对于程序的性能相当重要。
常见的实现管理定时事件的方式有三类:
原文见此:https://johnnylee-sde.github.io/Fast-numeric-string-to-int/
利用位运算和64位CPU的优势,实现快速的转换string到int,并使用Go来验证。
距离上次更新以及过去很久了,幸好这周更新了,哈哈~
阮一峰还有其他互联网中的许多人,让我相信互联网的精神就是分享。
于是我也想试试开始自己的周刊,记录我在这一周内的阅读与收获,先定个小目标吧,写下5期这样的分享,每期包括大概10项内容。
目前主要会偏向音视频、网络传输等方面,毕竟现在主要在做这方面。
阮一峰还有其他互联网中的许多人,让我相信互联网的精神就是分享。
于是我也想试试开始自己的周刊,记录我在这一周内的阅读与收获,先定个小目标吧,写下5期这样的分享,每期包括大概10项内容。
目前主要会偏向音视频、网络传输等方面,毕竟现在主要在做这方面。
这是腾讯提出的对超低延迟直播的思考与解决思路,如何设计这样场景的协议,依赖buffer抗抖动 vs 不抖动,类FEC vs 重传,NACK vs SACK等。这是我的一点总结。
使用dig确定local DNS使用哪个IP进行DNS查询,防止客户端使用的local DNS的IP是正确的,但是local DNS使用的IP是错误的;这在排查与不同运行商、地区相关的网络问题时很有用。
sync.Once 是一个只执行一次动作的对象
学习Go HTTP服务记录的一些笔记