代码之家  ›  专栏  ›  技术社区  ›  zhaider

AWS节点部署能力规划

  •  1
  • zhaider  · 技术社区  · 7 年前

    我正在研究NodeJS部署选项,并考虑使用AWS,但我似乎也不太了解定价以及如何进行部署。我当前的解决方案由Express以及几个单独的节点模块RabbitMQ和MySQL DB组成。目前,我并不期望应用程序有太大的负载,这只是企业Web应用程序的典型情况。如果要估计它的需求,我会说我需要4-8个CPU核和8-16GB的应用程序服务器,同样需要16-24 GB RAM的MySQL服务器,总存储容量约为2 TB。

    有人能告诉我什么样的实例类型更适合我的要求吗?我是否需要为App Server、DB Server等提供单独的实例,或者我可以在同一个实例上进行设置?其次,如果将来有需要,扩展需求的难度有多大?我可以切换实例类型并轻松增加内存、CPU、存储等吗?

    另一个问题是定价是如何工作的,它会在请求到达云端后计算出它消耗了多少资源,还是即使没有请求进来,我仍然会被收取费用?

    请记住,我没有使用AWS的经验,我只是希望目前将其用作托管网站。你的建议是什么。

    谢谢

    1 回复  |  直到 7 年前
        1
  •  1
  •   MrDuk    7 年前

    你有几个问题,其中许多是我们无法回答的,因为 我们不知道您的应用程序资源需求是什么 .

    有人能告诉我哪些实例类型更适合我的要求吗

    不是真的。如果您知道哪些服务需要更多的CPU而不是RAM,您可以查看 instance descriptions 看看哪种类型最适合您的(有些是针对CPU优化的,有些是针对磁盘优化的,有些是针对RAM优化的,等等)。不过,这最终只能由您决定(除非您有可以与我们共享的负载测试指标)。

    我是否需要为App Server、DB Server等提供单独的实例,或者我可以在同一实例上进行设置?

    你可以用桌面做任何你通常想做的事情——这是一个成熟的操作系统,唯一的区别是你必须明确地配置它周围的网络(谁可以访问你的主机,在什么端口上,等等)。虽然拥有多个主机是明智的,但如果您刚开始只是测试,那么现在在一个主机上启动所有内容并没有什么错,同时您也要做好准备。

    如果将来有需要,扩展需求的难度有多大?我可以切换实例类型并轻松增加内存、CPU、存储等吗?

    简单是相对的。您当然可以增加更多实例,但这些实例的扩展方式 使用您的应用程序 是完全不同的。您的应用程序迁移到新硬件有多容易?你能在多个盒子前面扔一个负载平衡器吗?这些是你需要考虑的问题。

    值得明确指出的是,您无法使用额外资源(存储除外)升级现有计算机。如果您需要更多的CPU、内存和带宽,那么这是一种新的实例类型。

    定价是如何工作的,它会在请求到达云端后计算出它消耗了多少资源,还是即使没有请求进来,我仍然会被收取费用?

    亚马逊有 a pretty robust pricing description 你应该过去看看。

    对于基本实例:

    定价是每个实例消耗的每实例小时数,从启动实例到终止或停止实例。根据您运行的Amazon EC2实例,消耗的每个部分实例小时将按整小时或每秒计费。

    但您还必须考虑数据速率(在同一页上)以及存储成本。

    希望这有帮助。