Javascript 如何启用免费Lambda/DynamoDB缓存
问题描述 我使用AWS Lambda创建了一个简单的REST API,并将数据保存在AWS DynamoDB中(全部使用无服务器框架)。后者定义为“按请求付款”。目前,API使用不多,但是当应用程序扩展时,它可能会导致显著的额外成本 我尝试过的 我得出的结论是有两种选择:Javascript 如何启用免费Lambda/DynamoDB缓存,javascript,amazon-dynamodb,aws-api-gateway,serverless,Javascript,Amazon Dynamodb,Aws Api Gateway,Serverless,问题描述 我使用AWS Lambda创建了一个简单的REST API,并将数据保存在AWS DynamoDB中(全部使用无服务器框架)。后者定义为“按请求付款”。目前,API使用不多,但是当应用程序扩展时,它可能会导致显著的额外成本 我尝试过的 我得出的结论是有两种选择: 要么缓存DB值 或者缓存API网关响应 虽然是付费的,但我已经尝试了AWS DynamoDB DAX,但它是一种付费功能,我正在寻找一种替代方案(带有代码),以便在24小时内不太可能更改的GET请求时,最大限度地减少对数据库的
GET
请求时,最大限度地减少对数据库的请求
我还做了一些研究,发现在API网关中启用缓存是可能的,但我不确定什么是最好的/经济高效的方法。也许有人有一个实际的例子来解释如何实现这一点?我正在使用(在我的场景中是memcached)将所有点击缓存到数据库中。从代码的角度来看,扩展RESTAPI以检查缓存非常容易,如果没有,则转到数据库,将结果添加到缓存并返回
这非常划算,而且很容易在lambda上实现
另一种选择是在指定阶段启用缓存。
启用缓存时,必须选择缓存容量。一般来说,容量越大,性能越好,但成本也越高。默认情况下,只缓存GET方法
我建议您检查您的用例,并根据当前负载选择最具成本效益的解决方案