Ruby:生产环境中的GC :: Profiler.enable会导致性能问题吗?

Ale*_*lex 7 ruby memory profiling ruby-on-rails-3

可以在生产环境中激活ruby 1.9.2中的GC :: Profiler会导致性能问题吗?在性能关键的生产应用程序中使用它是否安全?

Jea*_*rtz 5

简单地激活GC::Profiler不应该导致性能下降,但问题是你计划用它做什么.

比较它Rails.config.log_level.如果将此值设置得太高(例如:notice),则需要将大量数据写入日志文件,导致IO比所需的高得多,从而导致性能下降.这就是记录器:debug在生产中设置的原因,以最大限度地减少IO操作.

因此,如果您启用GC::Profiler并仅在边缘情况下轮询特定结果,那么我不认为应该存在问题,当您开始过度使用分析器时,事情可能会开始变慢.

但这适用于所有事情,从过度使用数据库查询到过度使用复杂代码到过度使用图像等等......

  • 在这种情况下,我建议您直接与他们联系.也许他们可以告诉你他们如何(通常)进行民意调查.我相信他们可以告诉您如何避免对您的服务产生任何重大影响. (2认同)