我正在使用NodeJS和Express作为代理来处理HTTP GET请求,对数据进行一些小的适配,并将数据提交到Amazon Kinesis。这是从我的代码中提取的:
var express = require('express');
var app = express();
app.get('/proxy-test', function(req, res){
var data = req.query;
// perform some light data processing
// send results to kinesis
kinesis.putRecord({
StreamName : MY_STREAM_NAME,
Data : data,
PartitionKey : MY_PARTITION_KEY
}, function(err, data) {
if (err) {
console.log(err, err.stack); // an error occurred
} else {
console.log(data);
}
});
res.send(200);
});
在200个并发用户(循环100次)运行JMeter测试5分钟后,我收到了以下错误消息:{ [InvalidSignatureException: Signature expired: 20140409T152855Z is now earlier than 20140409T153211Z (20140409T153711Z - 5 min.)] message: 'Signature expired: 20140409T152855Z is now earlier than 20140409T153211Z (20140409T153711Z - 5 min.)', code: 'InvalidSignatureException', time: Wed Apr 09 2014 17:37:11 GMT+0200 (CEST), statusCode: 400, retryable: false, _willRetry: false } 'InvalidSignatureException: Signature expired: 20140409T152855Z is now earlier than 20140409T153211Z (20140409T153711Z - 5 min.),提示签名已过期。请问是否可以进行配置或代码更改以确保发送并保存所有Kinesis记录?
'InvalidSignatureException: Signature expired:
时,这个方法对我有效。 - jmcgrath207