更好的是,更高的GHz和更less的内核或更低的内核与更低的一个ruby应用程序的核心

我刚刚完成开发一个networking爬虫,基本上允许用户抓取他们的网站,并通过他们的网站通知他们的错误。 不过,我的应用程序是非常耗费资源的。 这是一个ruby的应用程序使用rails,mongo,一些gem,并使用延迟的工作在后台运行爬行。 在具有Intel Core 2 Duo @ 2.4GHz和4gb RAM的Mac上testing爬虫,我只能以平均每小时爬取500页的速度抓取5个网站。 如果我试图抓取5次,那么这个过程只会被杀死,抓取失败。 当一次抓取5个网站时,我的CPU使用率一直在95%-100%,而我只用了大约600MB的ram。

我在服务器市场,我的预算低于1000美元。 所以我的问题是 你认为用更低的GHz获得更多核心的服务器还是更less的核心和更高的GHz的服务器会更好?

我已经探索了许多选项,如亚马逊aws,专用服务器,多个小型VPS等。而且我觉得购买一两台服务器并将其放在数据中心的成本效益最高。 我可以通过朋友获得一半的内阁,我可以远远低于市场价格。 我只是不知道如何花最好的钱,任何有识之士将不胜感激。

这听起来像你的应用程序需要更好的devise,缺乏适当的并行性,除非你真的以某种方式渲染这些网页,即使如此,我认为如果你从最终的渲染 – 交互性解耦合,你应该能够超过每秒8不是优先事项。

最好的办法是确保应用程序中的正确并行性,并获得将为您提供每秒最多操作的设备。 几乎总是意味着更多的处理器核心。 基本计算应该是核心* gHz =分数。

也就是说,某些types的处理器也可能有所作为。

对不起,我不是一个mac用户,所以我想到的Windows任务pipe理器,显示利用每个核心 – 如果你有这样的东西提供给你 – 检查,如果你看到两个核心最大出局,那么是的,你最好得到更多的核心。

如果你看到一个核心已经超频,另一个核心空闲,那么GHz对你来说更重要。