如何衡量Linux性能,避免最典型的错误:网络篇

码农天地 -
如何衡量Linux性能,避免最典型的错误:网络篇

在本系列中,我们将讨论Linux性能衡量,以及如何正确测量它。 Linux性能是一个非常广泛的主题,因此,我们将重点关注通常会提高系统性能的四个主要资源--CPU,内存,磁盘存储和网络。
在网络方面,我们应该研究三件事:带宽,延迟和数据包丢失(也被视为错误)。

您可以从全局的角度考虑网络,实际上很难观察,而您和交换机之间的本地则很难观察。

延迟

就延迟而言,由于各种原因,衡量延迟的最佳方法是在您的应用程序级别。

这只是两个端点之间的ping操作,可能会让您对网络延迟有所了解,尤其是在网络加载时。至于外部测量,我们可以执行pingmtr操作,这为我们提供了有关可能发生丢包以及延迟发生的位置的更多信息。

我认为经常无法衡量的有关网络的另一有趣部分是DNS查找的一部分。您通常会说:“我们进行DNS查询时,DNS的速度很慢,似乎已经被缓存了”。

但实际上,这不会太慢,尤其是对于反向DNS。我们可以使用BCC集合中的工具,为我们提供了很大的便利。

带宽

对于网络带宽,只要有网络存储限制,您只需知道您的限制。也许将某些东西作为VM放置在云上,并且如果您要使网络饱和100%,则会看到排队的情况。

这对您的应用程序不利,特别是对于某些依赖发送大量小数据包的应用程序而言。当您通过网络推送一些大数据包时,可能会饿死。

从本地网络的角度来看,另一件事是您要确保没有错误。

数据包丢失和重传

这是另一件重要的事情,因为两个端点之间发生了许多网络性能问题,这是因为数据包丢失和重新传输,而不是因为网速太慢。

重传一定会发生,但不应该太高。在这种情况下,我觉得3%的重传率非常高。

PS: 本文属于翻译,原文

特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

Tags 标签

加个好友,技术交流

1628738909466805.jpg