0

好的..我认为这个问题很愚蠢,但我需要这样问。

我有一个 servlet,可以根据情况检查大约 20-50 台服务器的健康状态。

我试图将时间减少到尽可能短,但我仍然需要 15-20 秒才能做出响应。

我正在控制台上打印东西,因为我很满意 servlet 不是 stuch 但用户看不到。

有什么方法可以在请求或新页面上打印数据,以便用户知道服务器没有卡住 - 我不想传递请求,因为还有一些处理要做。

我只想像在控制台中一样打印。我检查了System.setOut(PrintStream)但这也只有在我通过请求调度程序后才会对数据进行处理 - 对我不利。

如果这是一个愚蠢的问题,我很抱歉。我找不到我的问题的解决方案。任何帮助将不胜感激。提前致谢。

更新:我目前正在显示一张图片,上面写着正在加载。但即使服务器崩溃,图片仍然存在。在我的情况下,它不是服务器状态的真实指示。

4

3 回答 3

1

我认为 WebSockets 支持您正在寻找的内容,https://www.google.com/search? q=websockets 。您必须更新您的 javascript,假设您的浏览器支持它,然后更新您的 servlet 代码和容器以支持它。Jetty 支持它,我不确定其他容器。

或者,您可以将进度保存到表格或其他东西并轮询该数据。

于 2013-08-20T13:35:59.727 回答
0

使用 javascript 显示加载栏。这会告诉用户在后台发生了一些事情。

于 2013-08-20T13:02:44.870 回答
0

对于第一个请求,您可以显示带有某种“请稍候”指示符的页面,并执行第二个实际获取数据的请求(例如,通过 JavaScript)。

于 2013-08-20T12:58:35.100 回答