Java:测量POST / GET请求的带宽

时间:2013-06-10 09:13:01

标签: java database post get bandwidth

我遇到了这样的问题。我有Client(只是网页)和Server(一些处理客户请求的Java控制器)。

1)客户端向服务器发送API请求(POST或GET)并以JSON格式获取响应。

2)当服务器收到来自客户端的请求时,它会在DB中保存API请求以进行统计(用户ID,时间戳,API请求类型等)。另外,我需要保存此API请求的Bandwidth / ConnectionSpeed。

问题:有任何想法或建议如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

从Java的角度来看,这并不容易。您可以监视收到请求的时间以及将答案返回给用户的时间。您还可以保存JSON字符串的大小并进行计算,但这只是有限的信息,因为您只会根据JSON字符串测量服务器的最终吞吐量。这不仅与服务器网络状况有关,还与当前服务器性能,甚至客户端性能能力有关。

您可能还尝试使用某些特定于操作系统的工具来嗅探某些软件包,然后将其添加到数据库中,但是在应用程序内部不能使用API​​,您必须找到一个技巧来将其映射到您的软件包(例如,每个JSON字符串都需要具有唯一的ID)。

另一种选择是查看您的体系结构,检查涉及哪些SW和HW组件,可能某些(反向)代理服务器或负载均衡器可以为您提供所需的一些信息。