首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >redis欧姆慢性能

redis欧姆慢性能
EN

Stack Overflow用户
提问于 2012-10-04 15:32:13
回答 1查看 736关注 0票数 0

在过去的几天里,我们一直在绞尽脑汁,试图理解为什么rails项目中的redis/欧姆( redis/ohm )看起来有些太慢了。

它的要点是,一些要求欧姆/红约100至200毫秒,这似乎相当高,考虑到我们的高期望,火焰般的快速表现。

我们正在运行的命令如下所示:

Stats::TermStats.find(term_slug: 'term_slug', user_id: 123).to_a

在我们看来,我们并没有做任何极其复杂或疯狂的事情。到目前为止,我们对这个单一命令的分析(使用微型轮廓仪)显示了以下内容:

  • 其中一些呼叫在2-4毫秒内完成(这样可以/好/坏吗?)
  • 然而,有些人需要100到200毫秒(这肯定让人感觉很糟糕)。
  • 在redis客户机上使用slowlog get不会在redis上显示任何特别慢的内容。大部分redis命令在不到20微秒(0.02ms)的时间内完成。
  • 使用rails控制台并在循环中使用完全相同的片段/id运行快速基准测试,可以观察到相同的行为,也就是说,其中一些(相同的)请求似乎比大多数请求花费的时间要长得多。

我们的redis配置基本上是不加调整的。在测试期间,服务器没有做太多其他事情。

有什么建议可以提高性能/测试什么会使redis和欧姆/rails之间的速度减慢呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-01 11:47:14

万一有人感兴趣,我们似乎找到了这个问题的原因,甚至找到了解决办法

TL;DR:使用hiredis +调整ruby GC参数.

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

https://stackoverflow.com/questions/12730716

复制
相关文章

相似问题

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