0

我有一个使用 Spring Framework 用 Ja​​va 编写的网站。我有 10 个将同时运行的批处理作业,它们的工作是抓取选定的网站,处理它们并在 SOLR 中对它们进行索引。SOLR、客户端应用程序和数据库将托管在亚马逊 AWS 主机上。

我想知道在网络主机(亚马逊 AWS)上托管大量依赖带宽(下载网页)的批处理作业是否是个好主意?或者我应该在我的本地计算机上运行它们,因为如果它们失败了,监控它们会更容易。

如果我在本地运行作业,我将不得不定期从主机上的客户端数据库中复制一个表 (URLS_SUBMITTED),以便批处理作业处理 URL。我还需要与 SOLR 建立安全的 HTTPS 连接来更新文档。

如果我将它托管在网络主机上,那么我只需要一个数据库,但工作将更难维护。

根据经验,您推荐哪种方法?

4

2 回答 2

1

在 AWS 上进行。

他们几乎可以肯定比您拥有更好的网络连接,带宽成本在方案中可能是微不足道的,并且您获得了将所有内容托管和管理在一个地方的优势。

监控云中的服务器应该同样容易(或更容易)。

我对您关于网络上“更难维护”的工作的评论很感兴趣。随意添加一些评论来进一步解释这一点。

于 2013-05-31T09:18:27.030 回答
0

Amazon Elastic MapReduce是您完成此任务所需的。使用 EMR,您可以将“批处理作业”视为在“云”中并行化和执行的“作业”。

于 2013-06-03T18:27:13.203 回答