标签:包含 通过 列表 _for elastics 表数 没有 文档 code
一份文档被索引之后,需要等待一段时间才能被查询到。这一性质维护了 es 的性能承诺,但也限制了它的应用场景。截至本文撰写之日,es 已经更新到了 7.x 版本。然而,网络中几乎查询不到将其用作企业级主力搜索赋能工具的案例,也许大家选择了 RMDB,亦或是技术保密吧。
假设,我们接到一项任务,将 RMDB 切换为 NoSQL 。其中,指定 es 为搜索引擎,指定一款仅包含主键索引的数据库来存储数据,kv/column/graph 数据库可以作为辅助工具。不考虑分布式一致性问题的前提下,如何去解决延时问题呢?
如果一个搜索请求是独立的,也就不存在因果关系。发起者对结果集的大小是没有预期的,通常情况下可以接受索引延迟。
当用户新增了一条数据,刷新列表,期望看到新增的数据。
等到索引可见后,再响应新增请求。可以通过 sleep 命令等待 1s,或者在 es 请求中设置?refresh=wait_for
在处理列表请求时,等待 1s
对于未设置搜索条件的列表页,使用 redis 缓存最近新增的数据。并在组装列表数据时,添加这些缓存数据
标签:包含 通过 列表 _for elastics 表数 没有 文档 code
原文地址:https://www.cnblogs.com/WessonStar/p/12864775.html