代码之家  ›  专栏  ›  技术社区  ›  Guest

java中web应用的后台处理

  •  0
  • Guest  · 技术社区  · 6 年前

    我有发票清单,里面有PDF文件。用户可以选择n张发票,点击下载按钮。我们将立即显示新窗口,显示状态为挂起,但在后台,所有的pdf都应该合并,如果合并结束,状态应该更改为可用。

    如何在web应用程序中实现发送响应后的后台处理和后台处理完成后的再次发送响应

    0 回复  |  直到 6 年前
        1
  •  0
  •   Axel Podehl    6 年前

    您的Web UI可以将请求发送到Web服务器,该服务器立即生成一个内部线程并返回挂起状态。当web服务器的线程正在处理时,您的UI可以再次使用(解锁)。

    备选方案1:WebUI可以每5秒左右轮询一次(参见HTML5WebWorker),通过请求/重播检查此处理的状态,并在完成后检索最终结果。

    备选方案2:您可以建立某种形式的从WebServer到WebUI的“推送通知”,以便在处理完成后将其告知UI。有几个Push api(根据您的后端/前端语言选择)。有些只是实现一个轮询状态检查,如上所述。。其他的类似WebSocket的更通用。不幸的是,目前还没有标准,但我希望它即将到来: https://www.w3.org/TR/push-api/