Tag: amazon web services

在amazon ec2实例中处理I / O请求

学习节点后,JavaScript和所有其余的困难的方式,我终于要释放我的第一个Web应用程序。 所以我订阅了amazon web services,并创build了一个微型实例,计划在第一年的免费层 ,让我的应用程序提供给世界。 我更关心隐藏成本。 我知道,免费层每月为Amazon EC2 EBS提供100万次I / O请求。 事情是,我开始testing我的应用程序一个EC2实例来检查一切运行正常; 而且我已经有超过10万个I / O请求 。 我基本上是迄今为止唯一使用它的实例 ( 实例运行37小时 )。 所以我很担心如果我的应用程序获得一些stream量会发生什么事情,而且我不想在本月底结束一个巨大的意外账单。 我觉得很奇怪,因为我主要服务于静态的东西,而我的服务器端代码包括: 从客户端接收search请求 1个http请求到一个网站 1 https请求的YouTube的API 将数据保存到mongoDB 将结果发送给客户端 你有什么build议,如何大幅度减less我的IO? 我目前还没有使用其他亚马逊服务,也许我错过了什么? 或者,也许亚马逊免费层在我的情况下不够,但那么它可以足够呢? 我的意思是,我的应用程序毕竟是非常简单的。 我很乐意为您提供任何帮助 谢谢!

我可以在每个请求中更改AWS Lambda的公有IP吗?

每当我提出要求时,我都希望获得新的公开IP。 是否有可能有意识地触发我的容器被回收,否则导致我的知识产权被重新configuration?

NPM问题使用AWS codedeploy部署nodejs实例

我目前正在尝试通过Github和AWS Codedeploy自动将nodejs应用程序部署到EC2实例。 我尽可能地遵循了这里的指示,但是我的AfterInstall钩子事件却遇到了麻烦。 这是我的XML文件: version: 0.0 os: linux files: – source: /backend destination: /home/ec2-user/signal permissions: – object: / pattern: "**" owner: ec2-user group: ec2-user hooks: ApplicationStop: – location: backend/app/deploy/stop.sh timeout: 10 runas: ec2-user BeforeInstall: – location: backend/app/deploy/beforeinstall.sh timeout: 1200 runas: ec2-user AfterInstall: – location: backend/app/deploy/afterinstall.sh timeout: 1200 runas: ec2-user ApplicationStart: – location: backend/app/deploy/start.sh timeout: 60 […]

AWS Lambda:无法导入模块

请原谅我,我在Lambda和Node上是全新的。 我正尝试复制此 git以使用AWS IoTbutton订购披萨。 我目前的代码是: var pizzapi = require('dominos'); var myStore = new pizzapi.Store( { ID: 'Example' } ); var myAddress = new pizzapi.Address( { Street: 'Example', City: 'Example', Region: 'Example', PostalCode: 'Example' } ); var myCustomer = new pizzapi.Customer( { firstName: 'Example', lastName: 'Example', address: myAddress, phone: 'Example', email: 'Example@gmail.com' } ); var order […]

如何在Javascript / Nodejs Lambda函数中获取AWS区域:

如何从Nodejs / Javascript AWS Lambda函数中识别区域? AWS_DEFAULT_REGION环境variables提供了一个ReferenceError(参见这里 ,适用于Java,不适用于Node / Javascript)。 我意识到我可以从上下文对象中获取“invokedFunctionArn”,并对该区域进行parsing,但似乎应该有一个更直接的方法。

AWS Lambda TooManyRequestsException:速率超出

尝试执行Amazon Web Services(AWS)Lambda函数( 多次 )时,我们发现错误: AWS Lambda TooManyRequestsException: Rate Exceeded 我们如何解决这个问题?

Node.js获取高内存使用率的通知

我在Amazon EC2的Ubuntu 14上运行了一个Node.js应用程序。 如果内存使用量达到特定的大小,我想发送电子邮件。 我知道,PM2公开了一个API,它允许在达到一定的内存使用量时重新启动应用程序。 现在我不想在这个时候重新启动应用程序,只是为了得到一个关于它的通知,并用它来做任何我想要的(在我的情况下,发送一封电子邮件)。 我怎样才能使用PM2或任何其他免费工具?

在context.fail之后,AWS Lambda函数会继续执行一些操作

我有一个简单的AWS Lambda函数,可以对保存到S3存储桶的映像进行一些validation。 我使用async.waterfall来下载图像并进行处理,但是在我进入第一个瀑布函数之前,我对从S3 PutObject触发器获得的事件数据做了一些基本的validation,特别是大小信息( event.Records[0].s3.object.size )。 如果事件引用的图像大于MAX_SIZE,则使用context.fail(new Error("Validation error: the file is too big."))来结束执行。 这一切都工作正常,但我注意到在我的日志中logging错误后,function继续运行一点之前退出。 例如,我的async.waterfall调用中的第一个函数被调用(即来自该函数的消息显示在日志中)。 我甚至尝试在context.done(errorMessage)之后立即添加一个context.done(errorMessage) ,并且它会被执行(即我传入的消息被logging下来)以及几行代码。 这是预期的行为? 在文档中我找不到任何提及的内容。 该函数是否需要一点时间才能退出,或者我误解了在async.waterfall之前的处理函数中的代码的同步性质? 以下是我的一些代码。 在context.fail之后显示的所有console.log消息都会打印到日志中,我不希望发生这种情况。 exports.handler = function(event, context) { console.log('Received event:', JSON.stringify(event, null, 2)); if (event.Records[0].s3.object.size > MAX_FILE_SIZE) { var error = new Error("Validation error: the file is too big.") context.fail(error); } console.log('Event validation complete.') var […]

如何在AWS中部署node.js应用程序

当我尝试在AWS中部署新的node.js应用程序时,iam收到错误 Failed to find package.json. Node.js may have issues starting. Verify package.json is valid or place code in a file named server.js or app.js. 我已经validation了我的package.json,它显示为true。 我的package.json文件如下: { "name": "sgcp", "private": true, "version": "0.0.0", "description": "a Sails application", "dependencies": { "sails": "0.9.7", "nodemailer": "~0.6.1", "grunt": "0.4.1", "sails-disk": "~0.9.0", "ejs": "0.8.4", "optimist": "0.3.4", "sails-mongo": "~0.9.7" }, "scripts": […]

如何使用AWS设置AngularJS应用程序?

我是否会使用EC2实例并在其上安装Web服务器(如Node.js),然后按照惯例执行所有操作,或者是否必须使用AWS SDK for JavaScript? (这不是一个静态的AngularJS应用程序,将与应用程序服务器交互)