Articles of amazon web services

将string附加到AWS Lambda中的文本文件Nodejs

场景:文本文件snapshot-ids.txt位于S3存储桶中。 我正在尝试创build一个每日运行的Lambda函数(Cron),它将使用AWS CLI获取卷的快照,然后将该snapshotId保存到S3中的文本文件中。 在下一次创build另一个快照时,新的snapshotId将被保存到S3上的同一文本文件中。 文本文件是snapshotIds的占位符,当达到阈值时,它将删除顶部的snapshotIds并在末尾添加新的(FIFOpipe道)。 对于不使用AWS lambda的人来说,我的问题是将文本追加到variables的最快方法是什么,并用新行返回新variables。 对于了解Lambda的人,这是AWS Lambda的基本代码,我使用fs.appendFile,但是如何使用从s3.getObject()获得的文件并最终将其传递给s3.putObject()? 编辑:这是我的进步: console.log('Loading function'); var aws = require('aws-sdk'); var s3 = new aws.S3({ apiVersion: '2006-03-01' }); var fs = require('fs'); exports.handler = function(event, context) { //console.log('Received event:', JSON.stringify(event, null, 2)); // Get the object from the event and show its content type var bucket = event.Records[0].s3.bucket.name; var […]

从AWS显示用户的个人资料图片

我完全不熟悉AWS,我想了解一些关键概念在开始构build之前是如何工作的。 我发现本教程直接将图像上传到节点JS中的AWS: https://devcenter.heroku.com/articles/s3-upload-node#uploading-directly-to-s3 在我的webapp中,我使用的是MongoDB,每个用户(用户模式)都能够更改他们的个人资料图片。 在高层次上,我一直在想用户select一个新的图片并点击保存,我会按照上面的步骤直接上传新的图像到AWS的“桶”。 那么我将如何将其呈现在用户的个人资料页面上? 我是否需要在AWS端使用数据库(并跳过我的应用程序的mongodb部分),将每个用户与个人资料图片相关联? 我理解“保存到AWS”部分,但是不清楚如何以与用户关联的方式来检索/呈现映像(保存到AWS后)。 这是我的mongoose用户架构: 'use strict'; var crypto = require('crypto'); var bcrypt = require('bcryptjs'); var mongoose = require('mongoose'); var recipeSchema = require('./recipe.js').schema; //need the objectID, see: https://gist.github.com/fwielstra/1025038 var Schema = mongoose.Schema; var ObjectId = Schema.ObjectId; var userSchema = new Schema({ email: { type: String }, password: String, resetPasswordToken: String, resetPasswordExpires: […]

无法“npm install aws-lib”

我对AWS非常陌生我开始探索AWS文档,想到从NodeJS应用程序连接AWS sdk,因为我已经安装了npm aws-lib,如下所示。 你能帮我解决这个问题吗? appss-MacBook-Pro-2:NodeJS apps$ npm install aws-lib aws-lib@0.3.0 node_modules/aws-lib ├── underscore@1.5.2 ├── xml2js@0.1.14 └── sax@0.1.5 appss-MacBook-Pro-2:NodeJS apps$ npm test npm ERR! Darwin 15.0.0 npm ERR! argv "node" "/usr/local/bin/npm" "test" npm ERR! node v0.12.7 npm ERR! npm v2.11.3 npm ERR! path /Users/apps/Desktop/IOT/NodeJS/package.json npm ERR! code ENOENT npm ERR! errno -2 npm ERR! enoent ENOENT, […]

使用lambda函数将数据库抓取为JSON

我正在使用dynamo-db扫描来获取这个JSON格式的数据库表,但它似乎不工作 var doc = require('dynamodb-doc'); var dynamo = new doc.DynamoDB(); exports.handler = function(event, context) { dynamo.scan({ 'TableName' : 'DATABASE_NAME' }, function(err, data) { console.log('this doesnt print'); if (err) console.log(err, err.stack) else console.log(data); }); context.succeed('ding'); 我不相信它正在进入callback函数,因为“这不打印”不打印。 有任何想法吗? 谢谢 :)

EC2上的节点服务器只能通过IP地址而不是域名来工作

监听端口3000的节点服务器。 当我尝试访问它通过IP地址它工作正常,但是当我尝试domainname.com:3000我无法连接。 节点服务器位于使用负载平衡器的Amazon EC2实例上,路由53位于DNS上。 我已经在安全组中启用了端口3000。 我觉得这可能是一个Apacheconfiguration问题,但不知道。 其他人也有类似的问题,但没能find解决这些问题的解决scheme。

如何使用Node / Angular / JavaScript将多个图像上传到亚马逊AWS S3存储桶

我想知道电子​​商务网站如何以及在哪里上传他们产品的图片。 Amazon AWS S3存储桶有多好? 我们如何使用Node / Javascript / Angular一次性上传/获取多个图像。 请build议。 谢谢

在同步查询的情况下对MySQL RDS性能的挑战

我有一个通过AWS上的NodeJS开发的应用程序,该应用程序与MySQL RDS数据库(服务器类:db.r3.large – Engine:InnoDB)相关联。 我们遇到性能问题,当我们同时执行同时查询时,数据库在完成最后一个查询后返回结果,而不是在每个查询完成后返回结果。 所以,举个例子:如果我们执行一个有10个同时查询的进程,每个查询的时间间隔为3秒,我们开始接收结果的时间约为30秒,我们希望在第一个查询完成(3秒)时开始接收数据。 看来,数据库正在接收查询并对其进行排队。 我有点迷失在这里,因为我改变了代码和AWS的几个东西(单独的连接,池连接等),但似乎并没有改善结果。 表A(13Mlogging)架构: CREATE TABLE `TableA` ( `columnA` int(11) NOT NULL AUTO_INCREMENT, `columnB` varchar(20) DEFAULT NULL, `columnC` varchar(15) DEFAULT NULL, `columnD` varchar(20) DEFAULT NULL, `columnE` varchar(255) DEFAULT NULL, `columnF` varchar(255) DEFAULT NULL, `columnG` varchar(255) DEFAULT NULL, `columnH` varchar(10) DEFAULT NULL, `columnI` bigint(11) DEFAULT NULL, `columnJ` bigint(11) DEFAULT NULL, `columnK` […]

npm使用AWS Lambda进行安装

我正在用Javascript编写AWS Lambda函数。 我需要使用synchronize.js库,所以我运行npm install synchronize 。 一切工作正常本地,但是当我上传* .zip到AWS并运行,它thorws以下错误: "errorMessage": "`/var/task/node_modules/fibers/bin/linux-x64-v8-3.14/fibers.node` is missing. Try reinstalling `node-fibers`?" 我认为它预计由npm安装不同的二进制文件版本。 我该如何解决?

在AWS Lambda中嘲弄

我有一个简单的AWS Node.js Lambda,我想用mocks来testing: //SimpleLambda.js var AWS = require('aws-sdk'); exports.handler = function(event, context) { var name = getName(); context.succeed(name); }; function getName() { return 'David'; } 我已经安装了mocha和simple-mock ,但我无法得到这个工作: //test.js //Mocha var assert = require('assert'); //Chai var chai = require('chai'); var expect = chai.expect; var should = chai.should(); //Simple-Mock var simple = require('simple-mock'); //Lambda var lambda = […]

AWS Lambda SDK – TooManyRequestsException

我有大约50个AWS Lambda函数,我有一个吞吐任务来部署它,脚本压缩函数并将其上传到S3,然后使用Lambda JS SDK我称这个任务来创build/更新函数: gulp.task('upload', function (callback) { var AWS = require('aws-sdk'); var lambda = Promise.promisifyAll(new AWS.Lambda(), { filter: function (name) { return name.indexOf('Async') === -1; } }); var promises = require('./lambda-config.js').lambda.map(function (lambdaConfig) { return lambda.getFunctionConfigurationAsync({ FunctionName: lambdaConfig.FunctionName }).then(function () { return lambda.updateFunctionCodeAsync({ FunctionName: lambdaConfig.FunctionName, S3Bucket: lambdaConfig.Code.S3Bucket, S3Key: lambdaConfig.Code.S3Key }); }).catch(function () { return lambda.createFunctionAsync(lambdaConfig); […]