最近部署一个项目到 EC2 遇到了一个很奇怪的问题: 采用 Rails+Nginx+Puma,EC2 服务器配置为 8CPU 和 16G 内存,当同时部署了三个项目时候运行一段时间就会很卡,通过 newrelic 的监控看到 ruby 的占用时间相当长,cpu 和内存几乎没有占用,图片如下:
三个服务器的 puma 的配置都为:
threads 0,16 workers 0
帮忙看一下问题出在哪里,是否是 puma 引起的资源锁的问题?
看下耗时很长的事务,基本就能看出慢在哪儿
workers 是 0?
是的,是 cap 和 puma 默认的配置,之前改成 4 也不行,还在找原因
数据库时间是正常的,就是 ruby 等了很久
此事务非彼事务 newrelic 可以看你的 ruby 慢在哪儿,时间是在什么地方消耗的,你截这个图只能看个热闹