小编man*_*nyu的帖子

在Ruby Net :: HTTP.start中为服务调用设置read_timeout

我想在我的ruby代码中覆盖服务调用的默认超时.我打开连接.

res = Net::HTTP.start(@@task_url.host, @@task_url.port) do |http|
    http.get("/tasks/#{task_id}")
end          
Run Code Online (Sandbox Code Playgroud)

我尝试将read_timeout时间设置为不足,但后来我的代码中出现了NoMethodError异常.

res = Net::HTTP.start(@@task_url.host, @@task_url.port)
res.read_timeout = 10
res do |http|
    http.get("/tasks/#{task_id}")
end
Run Code Online (Sandbox Code Playgroud)

建议我如何设置read_timeout.我希望将read_timeout设置为全局,以便我可以通过Net :: HTTPP.start()将该超时用于我的所有服务调用

ruby ruby-on-rails

12
推荐指数
1
解决办法
1万
查看次数

DynamoDB queryPage 操作与 FilterExpression 返回空结果以及 lastEvaluatedKey

按照我的理解。查询操作将在提到的索引上寻找结果,直到满足以下条件之一

  • 结果集已用完。
  • 检索到的项目数达到 Limit 参数的值(如果已指定)。
  • 检索的数据量达到 1 MB 的最大结果集大小限制。记录在这里

因此,DynamoDB 查询将根据上述条件获取结果,然后它会应用 FilterExpression,因此它很可能不会向您返回任何结果,因此它将返回空集和 LastEvaluatedKey

但我也在文档中阅读了以下内容

与 Scan 操作不同,Query 操作永远不会同时返回空结果集和 LastEvaluatedKey 值。

有人可以帮助解释上述文档声明的实际含义吗?

因为在实践中,当我使用带有限制FilterExpression 的queryPage API 时,我得到了相反的结果,即我得到了一个空集以及 LastEvaluatedKey。

我的上述理解是否正确?是否可以同时获得空结果和 lastEvaluatedKey 值?或者我错过了一些东西,因为我得到了空的结果?(根据文档,我不应该得到它。如果我没有得到空结果,那就太好了)

pagination amazon-dynamodb

5
推荐指数
1
解决办法
2073
查看次数

标签 统计

amazon-dynamodb ×1

pagination ×1

ruby ×1

ruby-on-rails ×1