我有一个在 node.js 8.10 上运行的 AWS Lambda 函数。该函数使用 ioredis 库连接到 Redis 服务器,获取一个键上的值,然后返回该值。我可以在日志中看到连接成功,并且成功检索到了该值。然而,响应从未返回,如果查看日志,可以看到 lambda 总是超时。
为什么会出现这种情况?是否有某种原因导致 Lambda 继续运行,而不是从 Redis 返回值?
这是我的 Lambda 函数代码:
为什么会出现这种情况?是否有某种原因导致 Lambda 继续运行,而不是从 Redis 返回值?
这是我的 Lambda 函数代码:
const Redis = require('ioredis');
const redis = new Redis(6379, 'http://redis.example.com');
exports.handler = async (event, context) => {
const value = await redis.get('mykey');
console.log('value', value); // this shows up in Cloudwatch logs
return value;
};
return { statusCode: 200, headers: { "Content-Type": "application/json" }, body: value };
- Get Off My Lawn'foo'
,那么它就可以工作了。 - geresader