首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Vespa扩展到500 QPS以进行搜索

将Vespa扩展到500 QPS以进行搜索
EN

Stack Overflow用户
提问于 2020-02-09 02:15:05
回答 2查看 174关注 0票数 4

我们已经创建了一个自定义搜索器。我们的文档大小约为40万。延迟保持在100ms以下,但当我们做负载测试时,QPS不会超过80,并且延迟也会增加到4-5秒。我们在组分发中使用9节点集群(c5.2xlarge - 8vcpu和16 We ) (3个大小为2的组,复制3个,可搜索副本3个)。我们尝试了不同的发行版,但无法获得速度。我们尝试使用不同值的调整参数,即使是大型计算实例也是如此

代码语言:javascript
复制
<requestthreads>
   <search>64/128</search>
   <persearch>1</persearch>
   <summary>16</summary>
</requestthreads>

找出瓶颈的更好方法应该是什么?有了这么大的集群,我们应该能够实现500k记录的500QPS。

EN

回答 2

Stack Overflow用户

发布于 2020-02-09 14:01:23

如果你还没有读过这篇文章,请阅读:https://docs.vespa.ai/documentation/performance/sizing-search.html

您需要测量以确定您的查询消耗了多少资源。这应该会让您了解您可以处理多少吞吐量,以及在哪里进行调优是有意义的。然后,您可以在各种负载下运行负载测试,以验证行为并找到最大吞吐量。在80QPS下,此系统处于过载状态,这对于观察系统不是很有用,因为您不希望在生产环境中在过载状态下运行。

如果你愿意,你可以在https://cloud.vespa.ai上部署你的应用程序,而不是自己运行它,那么我们可以从我们的角度给你更好的洞察力。

票数 4
EN

Stack Overflow用户

发布于 2020-02-10 15:50:10

如果您尝试过大小调整文档(1*)中描述的不同内容文档发行版,但没有超过80QPS,我怀疑您的基准测试客户端和Vespa搜索容器之间存在网络连接。例如,如果您有400 10的文档,并将其全部作为默认摘要的一部分返回,则会使1Gbps网络接口在31QPS下饱和,默认命中率为10

  • 1Gbps接口= 125 000 KB/s
  • 10在1Gbps上命中400 KB=4000 KB per result
  • 125 000 KB/s/ 4000KB /query =最大31个查询/秒。

传递"Accept-Encoding: gzip“头将在您的客户端和容器之间启用压缩。Vespa内部的内部通信已经压缩(如果足够大)。您还可以启用包含较少数据的显式文档摘要(2*)。

(1*) https://docs.vespa.ai/documentation/performance/sizing-search.html

(2*) https://docs.vespa.ai/documentation/document-summaries.html

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60129748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档