gpt4 book ai didi

java - 系统设计: How can I design a RESTful API that allows querying of results asynchronously

转载 作者:行者123 更新时间:2023-12-02 09:40:54 28 4
gpt4 key购买 nike

我需要构建一个 /search API,允许某人发送 POST,并检索稍后可以通过单独的 /results API 查询的 ID。

我查看了 Spring 方法:

DeferredResult

@Async

但似乎都没有演示从搜索中返回 ID。我需要一个能够记住 ID 的系统,并在有人调用 /results API 来检索特定搜索结果时引用它。

是否有 Spring 应用程序执行此操作的示例

最佳答案

您必须记住,Restful 服务是无状态的,因此将搜索结果状态保留在服务器中并不是一个好的做法。

一种解决方案是将搜索状态存储在数据库 (SQL/NoSQL) 上,并使用 Spring Cache 支持来缩短响应时间。

当用户使用 /search 请求新搜索时,您必须在服务器上生成 ID、准备结果并将其保存在数据库中,然后将新 ID 发送到客户端。稍后,客户端必须使用 /results/{searchId} 请求其结果。

请告诉我您是否会使用这种可能的解决方案,我将在 Github 上与您分享一个示例

关于java - 系统设计: How can I design a RESTful API that allows querying of results asynchronously,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57074198/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com