【问题标题】:Questions About Using Amazon Web Services (AWS) For Remote Development关于使用 Amazon Web Services (AWS) 进行远程开发的问题
【发布时间】:2011-02-26 02:57:59
【问题描述】:

我们是一家非常小的移动公司(为 iphone 构建应用程序),我们目前正在考虑托管服务。我们目前倾向于亚马逊的托管/网络服务。因此,我有一些问题:

1) 我可以在 AWS 上创建一个管理员帐户并将用户帐户分配给应该有权访问大多数(但不是全部)功能的开发人员吗?

2) 我们是否需要在产品开发中学习/使用 AWS API?我不喜欢 必须在托管服务中创建挂钩的想法。

3) AWS 的定价似乎随使用量而变化。所以,既然我们正在开发中,现在只有开发人员访问服务器,我说的成本会很低吗?

4) AWS 如何进行版本管理?我们有几个分散在全国各地的开发人员。每个人都需要从服务器检查最近的构建以进行开发 在他当地的盒子上。基本上,类似于 SVN。这可能吗?

5) 我猜我们需要开发服务器、svn 和生产服务器之类的东西?这是正确的吗?如果是这样,我该如何设置并找出相关成本?

6) 我们正在考虑一些数据库选项,其中包括 NoSQL 和 Neo4j——我们是否能够使用 AWS 来做到这一点?服务器语言为 Java。

感谢您的宝贵时间。

【问题讨论】:

    标签: amazon-s3 amazon-ec2 amazon-web-services


    【解决方案1】:

    回答您的问题:

    1. 是的,有点。 AWS 提供了身份和访问管理,但它不是最容易使用的解决方案。话虽如此,它可以让您锁定帐户上的某些访问活动,以便您对用户有一定的控制权。我想说的是,AWS 在很大程度上仍然是服务器管理员的单用户环境。
    2. 您可以只使用管理控制台就可以逃脱。仅当您要运行批处理或定期活动(例如,每晚凌晨 2 点拍摄所有机器的快照)时,才可能需要使用脚本。
    3. EC2 的成本很低,尤其是对于微型机器尺寸。但请记住,云计算的理念是提供短期使用的按需资源。如果您在夜间不必要地运行开发机器,那么您仍然需要付费!如果有人启动了一台超大型机器(或 30 个机器实例),那么您会突然发现自己的账单比预期的要多。
    4. (5. 和 6. 也是如此)Amazon EC2 的真正意义在于向您发放盒子。之后你做什么完全取决于你。您可以每天为您的机器创建快照,您可以部署 SVN 和 noSQL 等。

    我已经认真研究 EC2 有一段时间了,很多公司都开始关注您提出的想法。为员工提供按需计算能力是有好处的,而无需在内部管理任何基础设施。但我将重申我的第一点,即 EC2 在很大程度上是一个单用户服务器管理环境,它不适合在没有额外工具的情况下用作开发游乐场。 (或者至少,如果您的公司中有多个开发人员,这将成为一项具有挑战性的任务)。

    我拥有一家帮助公司将 EC2 用于开发/实验室/游乐场类型环境的公司。我不会在这里直接鞭打它,但会展示我们刚刚放在 DropBox 上的一个快速演示:http://dl.dropbox.com/u/16347737/RequestEC2Machines.html 随意请求一台机器,看看向 EC2 添加进程如何帮助实现您的目标。

    【讨论】:

      【解决方案2】:

      我使用 Amazon EC2 和 SimpleDB 运行/开发了一个网站,我为您准备了一些问题解答

      嗨。

      我们是一家非常小的移动公司(为 iphone 构建应用程序),我们目前正在考虑托管服务。我们目前倾向于亚马逊的托管/网络服务。因此,我有一些问题:

      1) 我可以在 AWS 并将用户帐户分配给 应该有权访问的开发人员 大多数(但不是全部)功能。

      根据我的经验,亚马逊用户和单个实例上的用户之间似乎没有直接对应关系。实例的根账户通过密钥对间接连接到亚马逊账户。不过,我必须说我没有详细探讨过这个问题。

      2) 我们是否需要在产品开发中学习/使用 AWS API?我不喜欢 > 必须在托管服务中创建挂钩的想法。

      我通过他们的 Web 控制台和 Eclipse IDE 插件管理一切。我从来没有接触过 API 进行开发和部署。

      3) AWS 的定价似乎随使用量而变化。所以,既然我们在 开发并且现在只有开发人员访问服务器,我 我说得对,如果有的话,成本会很低吗?

      微型实例的成本最低,如果您只是启动一个实例几个小时然后停止它,则成本相当高。我从不考虑启动一个微型实例来尝试新事物

      4) AWS 如何进行版本管理?我们有几个开发者 分散在全国各地。每个人都需要检查最近的 从服务器构建以在他的本地机器上进行开发。基本上,类似于 SVN。 这可能吗? 我还没有看到亚马逊直接提供此功能。您当然可以通过备份为您的存储库保留一个实例

      5) 我猜我们需要开发服务器、svn 和生产服务器之类的东西? 这是正确的吗?如果是这样,我该如何设置并找出相关费用?

      EC 定价 - http://aws.amazon.com/ec2/pricing/

      亚马逊简单月度计算器 - http://calculator.s3.amazonaws.com/calc5.html

      6) 我们正在考虑一些数据库选项,其中包括 NoSQL 和 Neo4j - 我们可以使用 AWS 做到这一点吗?服务器语言为 Java。

      Amazon 实例可以是您想要的,因此您可以使用预配置的 ami 来启动实例,或者从基本的 Ubuntu Server 或 Windows Server 开始,例如并建立一个你想要的系统。然后,您可以保存该系统的快照以在将来启动更多或在您的实例崩溃时重新启动

      【讨论】:

      • 丹麦语,感谢您的详细回复。我对#1 和#4 有一些跟进。 #1:也许我不理解设置,但您是说开发人员必须使用您用于设置帐户的相同凭据登录(并且可以访问您的所有付款信息)? #2:那么,亚马逊允许开发人员检查(和更新)夜间构建到他们的本地环境吗?您目前如何为您的公司进行版本管理?
      • 没问题!请记住,我不是专家,只是分享我所知道的
      • #1) 根据我目前的知识,我看到了两个选项 1) 1 个 Amazon 帐户,用于设置 DEV 框并在该开发框中创建用户,然后开发人员可以登录到或2)每个开发者都有自己的亚马逊登录并管理自己的实例进行开发和测试。 Ecipe IDE 集成使 2) 变得轻而易举
      • #2) 这就是我所做的。为了安全起见,我有一个本地内部服务器,其中包含代码存储库。我在我的个人机器上开发,同时管理我的开发机器和内部存储库之间的版本。只有当我将该代码部署到 Amazon EC2 中的测试或产品盒时,Amazon EC2 才会发挥作用。您也可以选择在 Amazon 实例中托管您的代码存储库。
      猜你喜欢
      • 2015-06-23
      • 2011-08-14
      • 2011-05-28
      • 2017-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-29
      相关资源
      最近更新 更多