本文介绍了 Quartz,这是一个用于 Go 语言的确定性时间测试库。Quartz 通过模拟查询或依赖于时间的调用,解决了测试依赖时间的代码时遇到的可重复性、确定性和速度问题。文章详细介绍了 Quartz 如何解决测试过程中出现的竞争条件以及如何处理复杂的依赖时间场景。最后,文章还强调了 Quartz 的设计原则,即测试代码应易于理解,并且时间应该以单调和确定的顺序推进。
Coder v2.12 版本包含多项网络改进,显著提高了数据吞吐量。文章深入探讨了实现这些改进的方法,包括增大 TCP 缓冲区、实施 HyStart 算法以优化 TCP 慢启动阶段,以及使用 Go 缓冲通道来减少数据包丢失。这些优化措施显著提升了 Coder 在不同网络延迟环境下的性能。