当前位置: 首页 > 知识库问答 >
问题:

需要指导-如何跟踪nginx-docker-rails性能问题

东门焕
2023-03-14

NGINX(7490ms):

146.185.56.206-silo[18/mar/2015:13:35:55+0000]“get/needs/117.json?iPhone HTTP/1.1”200 211 4“-”Mozilla/5.0(Macintosh;Intel Mac OS X 10_10_2)AppleWebKit/537.36(KHTML,like Gecko)Chrome/40.0.2214.115 Safari/537.36“7.490 7.490。

瘦(rails服务器):171ms

谁能提供一些指导如何排除这种情况?如何找到响应时间差的来源?我想可能是nginx、docker、thin或Linux。

共有1个答案

徐麒
2023-03-14

听起来像是其中一个瘦进程在负载下,正在执行繁重的任务,而nginx仍在向繁忙的进程发送请求。如果在Thin中存在排队问题,则处理请求本身需要很短的时间,但到达队列顶部需要更长的时间。因此,首先,在该请求之前或前后检查其他请求。

其次,如果您使用upstream服务(http://nginx.org/en/docs/http/ngx_http_upstream_module.html),显然您可以获得$upstream_response_time,并尝试记录它。

第三,您还可以尝试在dev/qa中复制类似的设置,并尝试压力测试。如果您设法一致地复制它,您可以看到每个队列上的请求数(即http://comments.gmane.org/gmane.comp.lang.ruby.unicorn.general/848)。

 类似资料:
  • 问题内容: 在Rails 3上有什么宝石可以显示 我的代码的哪一部分生成了哪个SQL查询 吗? 在Rails 2.3上有一个名为query_trace的插件,但是在Rails 3上似乎不起作用,它会产生以下错误: 问题答案: QueryTrace无法按原样工作,因为在ActiveRecord区域中的Rails 3 esp中进行了许多更改。 所以,我四处乱窜,使它像这样工作: 您只需要在提到的位置下

  • 问题内容: 我的Python库刚刚将其主模块名称从更改为。对于向后兼容,仍然存在,但是将其导入会引发一些警告。现在,似乎仍然有一些示例程序从旧模块导入,但不是直接导入。 我想找到错误的陈述。有没有什么工具可以让我跟踪导入并找到罪魁祸首而无需费力看所有代码? 问题答案: 使用以下命令启动python解释器: 然后只是grep您的旧模块。

  • 跟踪钩子宏是一个很强大的功能,用来收集嵌入式应用的相关数据。freeRTOS提供的源代码中的跟踪宏是空的,因此开发者可以根据自己的需求设计宏需要跟踪的数据,不使用的空的宏不会影响应用程序的时序。 如下几个使用跟踪宏的例子: 设置一个数字输出,用来表明当前执行的任务。可以使用逻辑分析仪来观察、记录、分析任务的执行序列及时序 相似的,可以设置模拟输出,比如电压,则可以使用示波器来观察时序 记录任务的执

  • 1. 简介 指定广告跟踪将提供您各种其它媒介推广为您网站带来的流量情况。通过对各种媒介推广给您网站带来的流量对比,您可以了解哪种媒介推广能够给您网站带来较多的流量,哪种媒介推广给您网站带来的流量质量较高。基于各种媒介推广带来的不同流量及流量质量,您可以进一步比较分析在各种媒介上的关键词和创意,了解哪些关键词和创意更能够吸引访客,哪些关键词和创意还需要进一步优化以及如何优化等等。通过不断地比较分析各

  • 在 CakePHP 的开发过程中,以问题跟踪系统的形式从社区获得反馈和帮助是极为重要的一部 分。所有 CakePHP 的问题跟踪都托管在 GitHub 上。 报告臭虫 写得好的问题报告都非常有用。下面的步骤可以帮助创建尽可能好的问题报告: 请 搜索 类似的已有问题,并保证别人没有报告你的问题,或者在源代码仓库中还没有得到修复。 请 包括 如何重现问题 的详细说明。这可以是测试用例或代码片段,来展示

  • 问题内容: 我正在尝试遵循Web性能测试与WebDriver谷歌测试自动化大会演讲和ChromeDriver “性能日志”文档页面中提出的想法,以获取要提交给webtest稍后进行性能分析的跟踪数据。 如何使用 pythonselenium绑定 检索性能日志? 我试图打印出驱动程序实例中可用的 但只有 而且我没有看到相关的命令行开关。 问题答案: 默认情况下, 性能日志是 禁用的 。 要启用它,请