1

我有一个应用程序需要对其项目进行自动完成。我身边没有这些物品,但是我调用了 Web 服务来获取这些物品。我应该以某种方式将这些项目存储在我身边(大约有 1000 亿个项目),还是只是为每个客户在文本框中输入的信件调用网络服务?

4

1 回答 1

0

用这些知识很难有一个好的答案,但理想情况下:

  • 在 Web 服务中实现它的 API:getSuggestions
  • 每次按键调用 Web 服务
    • 如果该方法在服务器上产生过多负载,则仅在文本字段更改后 X 毫秒才调用它,前提是同时没有其他更改。(例如 X = 300 毫秒)
      • 这样您就可以在键入时避免自动完成。
  • 无论它是否基于服务器/客户端,您都需要一些索引(使用一些复杂的数据结构)才能获得不错的性能。您可以使用lucene几乎“免费”获得它。
于 2012-12-15T19:20:36.917 回答