如何为一万名客户设计提前输入功能?

问题描述 投票:-1回答:1

我正在使用reactjs和java开发一个项目。我们要构建一个预输入函数,该函数将返回匹配的客户名称列表。有1万个客户。

我如何实现功能?我应该在服务器端还是浏览器端进行此操作?

感谢您的任何帮助。

javascript java reactjs autocomplete typeahead
1个回答
0
投票

这实际上取决于您的优先级。

TL / DR:在服务器上执行此操作,除非您确实需要即时响应或计划执行许多此类请求。

较长的答案:

如果立即响应很重要并且您正在执行大量请求,那么您可能要考虑在客户端上缓存名称并仅在本地实现预输入。它肯定会比不断达到目标更快,更高效。

如果您决定在本地缓存数据,还需要使本地缓存状态与服务器状态保持同步-这会带来一系列挑战(例如,在创建,删除或更改客户名称时,您可能需要通知客户端或定期轮询更新)。

另一方面是,如果您确实要完全在本地存储某些信息。客户信息听起来像是最好放在服务器上的内容。

您可以做的是仅在键入2-3个字符后才开始键入内容,然后返回该选择的所有名称。假设您的平均客户名称为〜15个字符,并且最多获得200-300个客户名称,那么未压缩的响应应小于5KB。应该是可管理的。这还有一个好处,就是可以使您的本地预输入过滤器功能非常快(如果要支持移动设备,这可能很重要)。

© www.soinside.com 2019 - 2024. All rights reserved.