elasticache 使用 AWS-SDK 从 lambda 读取和写入数据

thi*_*hge 2 amazon-web-services redis aws-sdk aws-lambda

我使用 NodeJS 作为我的 lambda 函数。目前我正在使用 NPM 包来连接 Redis 并将数据读/写到 Elasticache 中。但它给出了内部服务器错误。在 aws-sdk NPM 包中也有一些与elasticache相关的方法,但我找不到任何方法来设置elasticache和从elasticache获取值。我应该为此做什么?

小智 6

您必须使用 npm 包让redis从 Elasticache 读取和写入,以下是获取和设置的示例代码,

const redis = require("redis");

const client = redis.createClient({
    host: 'YOUR REDIS HOST',
    port: 6379
});

export.handler = async () => {
    await storeValue('sampleKey', 'sampleValue');
    const value = await getValue('sampleKey');
    return value;
}

const getValue = key => {
    return new Promise((resolve, reject) => {
        client.get(key, (error, response) => {
            if (error)
                reject(error);
            else
                resolve(response);
        });
    });
}

const storeValue = (key, value) => {
    return new Promise((resolve, reject) => {
        client.set(key, value, (error, response) => {
            if (error)
                reject(error);
            else
                resolve(response);
        });
    });
}
Run Code Online (Sandbox Code Playgroud)