动态更新基于Java的网站上的图形

时间:2014-11-05 21:42:41

标签: java javascript html ajax html5

我目前正在端口8080上设置基于本地主机的Web应用程序。此应用程序随我的Java服务器应用程序一起提供,用于显示与服务器相关的统计信息。我目前正在使用基本的Java GUI来显示服务器的统计信息,但是我希望通过Web可以通过数据的可视化表示来访问它。

我将使用的图表如下:

  • 甜甜圈图表
  • 填充图表

图表显示的信息需要每秒更新一次。这些图表将显示的信息包括服务器当前网络I / O,当前RAM使用情况,当前CPU使用率,运行服务器的线程数量,线程的处理时间,等。

如前所述,我已经将所有这些信息以基于文本的格式发送到GUI。

我在查看图表的API时遇到的问题是,他们都会呼叫其他网站(例如Google图表API),然后生成图像,然后显示此图像。如果您的互联网连接甚至可以远程跟上,那么每秒执行一次会破坏您的带宽。

我个人想到的唯一解决方案是创建一个系统,在该系统中绘制图形的布局,然后使用它,以便网站“连接点”'&# 39;图中的点数。然后我只需更新图表上的点,然后再次调用绘图函数,但有两个问题。

  1. 我不知道如何做到这一点。
  2. 我不确定此方法是否会比谷歌图表API方法更好地处理。
  3. 我知道这必须是可能的,因为(竞争)SmartFoxServer等应用程序使用它。示例图片:SmartFoxServer Remote Administration

1 个答案:

答案 0 :(得分:1)

您可以轻松地使用一些开源JS图表库。好的选择:http://www.chartjs.org/http://www.flotcharts.org/http://dygraphs.com/

您从服务器获取数据,即带有AJAX请求的JSON格式(5秒时间?)并将其提供给图表库。您可以使用websockets来从服务器触发更新,但这有点困难。