【问题标题】:RSolr::Error::Http (RSolr::Error::Http - 429RSolr::Error::Http (RSolr::Error::Http - 429
【发布时间】:2017-11-27 17:24:49
【问题描述】:

我正在研究托管在 heroku 服务器上的 Ruby on Rails 项目。搜索功能nalit 在本地主机上运行良好。但是当我尝试生产时,出现以下错误:

RSolr::Error::Http (RSolr::Error::Http - 429 
Error: {"code":429,"message":"Request meter exhausted. Please consider batching your requests, or contact support@websolr.com for help."}

我一直在寻找解决这个问题的方法。我发现429码状态是指websolr中的请求太多,是用来防御DoS攻击的。

请问我该如何解决这个问题。

问候

【问题讨论】:

    标签: ruby-on-rails heroku websolr http-status-code-429


    【解决方案1】:

    Websolr 支持在这里。 HTTP 429 响应表明您的索引的连接池已完全饱和。有几个选项可以解决它:

    1. 批量更新。如果您出于某种原因进行大量单文档写入,请尝试将它们批处理以减少使用中的连接数。
    2. 升级到更高的计划。并发限制随计划级别而扩展,因此升级可以获得所需的资源。
    3. 请发送电子邮件至 support@websolr.com,我们会查看是否有其他建议。

    【讨论】:

    • 谢谢@Rob。此问题是在等待电子邮件答复时发布的。一旦我与您联系,它就已修复。
    • @Rob - 如果发生这种情况是否意味着受影响的记录没有进入索引?解决这个问题后我应该重新索引吗??
    • @Jared 是的,429 表示请求被拒绝。重新索引文档/批次将确保它进入索引。
    猜你喜欢
    • 1970-01-01
    • 2014-12-04
    • 2013-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    相关资源
    最近更新 更多