2012-07-09 101 views
0

我们有一些用于从互联网收集数据的履带。 EC2 spot对于我们的应用来说是一个非常便宜的解决方案。你如何管理你自己的应用程序?

在我们的例子中,我们可以通过以下步骤设置爬虫:

  1. 推出亚马逊快速启动模板
  2. 的AMI安装依赖库
  3. 发送履带式应用实例
  4. 为我们的爬虫设置启动器,在启动完成后让它工作
  5. 使实例成为ami

但是当爬虫需要更新时,我们需要重复第3步。 它影响其他设置,例如自动缩放 或其他专色实例请求脚本中的'ami-id'。

'ami'中的应用程序管理是一个部署问题,因此我们需要使其尽可能简单的建议。现在,有另一种方式来管理它。我们使用源代码管理工具,部署步骤如下:

  • 3 git clone from source code repo。
  • 3.1从源头
  • 3.2编译应用程序中删除以前的版本
  • 3.3安装最新版本
  • 4发射器总是从重建最新发布的履带它唤醒履带前。

新的方法可以防止ami-id变化,但它必须每次都检出源代码。最后,获取源代码需要更多时间(源代码每天都在增长)

如何管理您的ami上的工件? 我不确定始终从源头建设是最好的选择。 它只克服了一些部署问题,但在爬行器实例运行后没有寻址更新。

回答

1

好吧,如果你的爬虫没有更新的每一天小时,然后我想你应该write some script即您将同时使用你的想法以前的和新的,从如果你的服务器做这么写剧本检查目前的版本是最新的然后go normal爬行,如果这比较老,然后move to the GIT Clone stuff,通过这个,如果你不经常修改爬虫,你可以有高效的性能。

上面实际上你会被降低了重建的大部分时间,因为你描述你必须做这些步骤大多没有理由

希望这有助于你

+0

感谢您的建议的重建过程。检查变更集是一个好主意,可以指示新版本即将推出。 – qrtt1 2012-07-10 03:12:58

+0

欢迎光临!很高兴听到它帮助你:) – Junaid 2012-07-10 06:41:54

相关问题