【问题标题】:How to get multiple response for single request in java web api如何在java web api中获得单个请求的多个响应
【发布时间】:2015-07-04 18:28:22
【问题描述】:

假设我有一个客户端向服务器发送请求以生成从 1 到 100 的数字并将响应发送回客户端。假设生成从 1 到 100 的数字是一项非常繁琐的工作,并且需要大量资源,因此我的服务器将开始生成数字并在服务器上生成数字后立即将数字发送给客户端,而不是生成所有数字并发送立即响应客户。

这有点像 Flipkart 页面。如果您打开一个页面,我们可以看到,该页面会在底部不断更新新产品,而不是一次性列出所有产品。

谁能为我的简单用例推荐一些有效的java技术?

【问题讨论】:

    标签: java web-services streaming client-server restful-url


    【解决方案1】:

    这听起来像是 Java 7 的 Websocket API 的工作。使用传统的 HTTP 是不可能的,因为交互遵循请求-响应模式(尽管轮询和长轮询等模式可以达到相同的效果)。 WebSockets 允许来自服务器的真正推送通知,因此客户端可以在数据可用时立即接收。

    【讨论】:

    • 非常有趣,感谢您的提示。是否可以使用 REST API?
    • 我相信最常见的模式是轮询 - 客户端发出请求以启动会话,然后定期发送另一个请求以检查其状态。一旦所有结果都完成并由客户端收集,服务器将删除会话。这并不能很好地扩展,因为客户端正在发出许多请求,如果客户端退出,服务器将不会意识到并继续执行他们的任务。
    • 是的,你是对的。但我在想应该有一些技术来解决这种用例。
    猜你喜欢
    • 1970-01-01
    • 2018-03-26
    • 2021-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-06
    • 2019-12-05
    • 2019-04-23
    相关资源
    最近更新 更多