我有一个通过 AJAX 搜索两个不同数据源的表单。数据比较小,但是返回的速度比较慢。
我构建了一个缓存层来存储第一次查询后的完整结果......但是,我想在用户执行搜索之前用数据填充缓存。
我应该查看AsyncController来执行此操作吗?有什么建议吗?
我想要的行为是(更新):
- 用户请求某个控制器的任何 ActionABC(不一定是搜索操作)
- 服务器端,该操作检查缓存并在为空时异步请求数据
- 当缓存继续在服务器上填充时,ActionABC 返回请求的视图
- 如果用户随后在填充缓存时执行搜索,他们的请求将等待直到缓存填充完成,否则缓存数据立即可用