java - 记录遗留 Java 应用程序的带宽使用情况

标签 java networking cloud bandwidth

我知道有很多关于监视和/或限制网络带宽使用的线程,但没有一个提供令人满意的答案。这是我的问题:

我有一个遗留的java应用程序,它与不同的服务器(如HTTP和JMS)进行通信。我的应用程序还可以接收传入的 HTTP 请求。现在,该应用程序应该部署在云基础设施中以提供 SaaS 模型。消费者的定价模型应该基于进出应用程序的带宽流量。

因此,我们需要设计一种方法来计算通过所有源(基本上是创建的所有套接字)流入和流出应用程序的字节数。代码库庞大,并且在某些情况下使用第三方通信库,因此主动代码更改并非在任何地方都是可能的。此外,该应用程序是所有平台都支持的遗留 Java 应用程序,该解决方案也应该适用于所有平台。我不想使用第三方外部监控工具来完成这项工作。相反,需要找到一个可以被动融入系统的解决方案来完成工作。

完成此任务的方法/选项/解决方案是什么?如有任何帮助,我们将不胜感激。

最佳答案

您可以创建一个位于应用程序和系统其余部分之间的 TCP 代理服务器。只要通过配置使用此代理服务器,它就会看到进出应用程序的每个字节。这样就可以按照你喜欢的方式计算或限制它。

关于java - 记录遗留 Java 应用程序的带宽使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11225515/

相关文章:

java - hibernate @ManyToMany,错误: relation does not exists

java - 如何使用 Servlet 显示响应中包含图像的 JSP 页面?

ios - iOS 设备上的低级网络流量访问

c# - 通过局域网将 Android 应用程序连接到 PC 应用程序

linux - 新的自定义 centos 启动盘,参数来自官方谷歌云设置

azure - worker 角色第三方软件

java - 在 Java 中,如何在不使用 DNS 的情况下测试网络连接?

javascript - UDP 流到 webRTC

jquery - jPlayer 2.0 经过/剩余时间

java - 类中的访问方法