谷歌云上的rails应用程序的高内存和CPU消耗

时间:2015-08-16 16:20:43

标签: passenger google-compute-engine google-cloud-platform ruby-on-rails-4.2

我在谷歌云上有一个Compute引擎,带有4核CPU Ivy Brigde和15 GB RAM,并且我已经部署了我的rails应用程序。

在此之前我曾在数字海洋上托管我的rails应用程序,在那里我获得了良好的吞吐量,而且cpu和内存消耗也很少。 它从未超过Digital Ocean的3 GB内存消耗,CPU消耗最大值约为50% - 55%。 在Digital Ocean上我有一个带有4核CPU和8GB RAM的单个实例,甚至我在同一个实例上运行mysql,redis和sidekiq,但它仍然可以轻松处理负载。

但是当我转移到谷歌云时,我开始面对同样代码的问题。 事实上,由于谷歌在亚洲拥有数据中心,我期待谷歌云的吞吐量更高,但我开始面临问题。 当我重新启动apache时,一切都恢复正常,并且在2-3小时之后它继续消耗内存和CPU,最后实例停止响应请求。

我检查了日志.....并且流量没有太大增加,我也在加载时间内记录日志以确保是否有人攻击服务器。 但我发现的所有请求都来自有效用户代理的有效浏览器。

我不明白为什么会这样。 首先我觉得它是DDOS / DOS攻击但是在日志中找不到任何可疑的东西(apache访问日志和rails日志)。

请帮帮我。 希望有一些好的解决方案,我可以尝试调试问题。

谢谢:)

0 个答案:

没有答案