我目前正在端口8080上设置基于本地主机的Web应用程序。此应用程序随我的Java服务器应用程序一起提供,用于显示与服务器相关的统计信息。我目前正在使用基本的Java GUI来显示服务器的统计信息,但是我希望通过Web可以通过数据的可视化表示来访问它。
我将使用的图表如下:
图表显示的信息需要每秒更新一次。这些图表将显示的信息包括服务器当前网络I / O,当前RAM使用情况,当前CPU使用率,运行服务器的线程数量,线程的处理时间,等。
如前所述,我已经将所有这些信息以基于文本的格式发送到GUI。
我在查看图表的API时遇到的问题是,他们都会呼叫其他网站(例如Google图表API),然后生成图像,然后显示此图像。如果您的互联网连接甚至可以远程跟上,那么每秒执行一次会破坏您的带宽。
我个人想到的唯一解决方案是创建一个系统,在该系统中绘制图形的布局,然后使用它,以便网站“连接点”'&# 39;图中的点数。然后我只需更新图表上的点,然后再次调用绘图函数,但有两个问题。
我知道这必须是可能的,因为(竞争)SmartFoxServer等应用程序使用它。示例图片:
答案 0 :(得分:1)
您可以轻松地使用一些开源JS图表库。好的选择:http://www.chartjs.org/或http://www.flotcharts.org/或http://dygraphs.com/
您从服务器获取数据,即带有AJAX请求的JSON格式(5秒时间?)并将其提供给图表库。您可以使用websockets来从服务器触发更新,但这有点困难。