gpt4 book ai didi

javascript - 处理 amazon ec2 实例中的 I/O 请求

转载 作者:数据小太阳 更新时间:2023-10-29 06:02:30 25 4
gpt4 key购买 nike

在艰难地学习了 node、javascript 和其他所有东西之后,我终于要发布我的第一个网络应用程序了。所以我订阅了Amazon Web Services并创建了一个微型实例,计划在第一年免费套餐让我向全世界提供该应用程序。

我更关心的是隐性成本。我知道免费套餐每月为 Amazon EC2 EBS 提供 100 万个 I/O 请求。

事实是,我开始在 ec2 实例上测试我的应用程序,以检查是否一切正常;我已经超过 100, 000 个 I/O 请求。到目前为止,我基本上是唯一一个使用它的人(实例运行 37 小时)。

所以我很担心如果我的应用获得一些流量会发生什么,我不想在月底收到一笔意外的巨额账单。

我觉得很奇怪,因为我主要服务于静态的东西,我的服务器端代码包括:

  • 收到客户的搜索请求
  • 对网站的 1 个 http 请求
  • 对 youtube api 的 1 个 https 请求
  • 将数据保存到 mongoDB
  • 将结果发送给客户

对于如何显着减少我的 IO,您有什么建议吗?到目前为止我没有使用任何其他亚马逊服务,也许我错过了什么?

或者在我的情况下,也许亚马逊免费套餐还不够,但它又能做什么呢?我的意思是,我的应用毕竟非常简单。

如果你能为我提供任何帮助,我将非常高兴

谢谢!

最佳答案

您没有提及您的应用的总访问次数。所以我假设你的访问量相当少。

什么是 I/O 请求?单个 I/O 请求是到达 EBS 卷的读/写指令。谨防!大型读/写的执行被分成多个较小的部分,这是卷的 block 大小。

高I/O的可能原因:

  1. 您的应用占用了大量内存。达到限制后,操作系统开始不断地从磁盘中的交换区域来回交换内存。
  2. 这很可能是 mongoDB 搜索的问题。 mongoDB 搜索在内部可以是很长的复杂查询。来自这个 question 的答案之一,这个人正在使用 mySQL,它在 24 天内给他造成了 10 亿次 I/O 请求。所以 1 个数据库搜索可以是多个 I/O 请求。
  3. 缓存被禁用,或者您编写/修改了很多文件。你提到你正在测试。 Free-teir 不适合开发东西。

你应该阅读 this ,如果您想知道免费套餐到期后会发生什么。

关于javascript - 处理 amazon ec2 实例中的 I/O 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16786172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com