我正在开发node.js中的视频流应用。由于它可能消耗大量的网络带宽,我想知道如何在 node.js 中跟踪应用程序的带宽使用情况以及整个系统本身?
所需输出的示例:
此应用程序:100 kb Rx 18 mb Tx
总计:200 kb Rx 20 mb Tx
答案 0 :(得分:3)
拥抱自己,因为它不会那么容易。
只有我认为跟踪网络流量的nodejs模块是network-debugger。我很少相信你会在那个项目中找到你问题的答案。
网络监控通常是特定于操作系统的:
是的,你是对的,它不是一个nodejs库,但正如你猜测的那样,没有一个。部分原因可能是因为系统管理员总是首选基于控制台的单件工具来监控他们的服务器,因此在节点中实现网络监控库的需求很少。
达到理想目标:
关于如何使用现有的基于控制台的工具在node.js中编码系统监视器,有一个非常有趣的article,可能会有很大的帮助。 您可能必须选择其中一个基于控制台的工具,了解如何以管道友好模式启动它(以便输出可以通过管道传输到文件或流到您的node.js服务器中)
或者,您可以重新发明轮子并在node.js中创建自己的网络监视工具,但我担心它最终将成为C或Objective-C中的一半JavaScript,一半操作系统特定代码。
另请注意,您需要管理员权限(Windows上的sudo或admin用户)来监控网络。这意味着您可能必须以提升的权限运行node.js.要记住这是一个额外的风险。