让AWS AppSync解析器缓存其输出的常见模式是什么?
我正在编写一个API,该API可以处理不会随时间变化的数据。该API返回书籍的内容(标题,作者,章节等)。
我最初的想法是让解析器从CloudFront请求一些JSON负载。如果请求的文档不在CloudFront中,则CloudFront将触发Lambda函数,该函数将知道如何(从数据库)获取JSON文档,然后将有效负载放入CloudFront中。从概念上看这很奇怪,但是可以解决缓存问题。
<div class="row col-md-12">
<div class="abc">
</div>
</div>
换句话说,调用虚拟的const query = `{
bookById(bookID: "468c95") {
bookID
title
author
chapters {
title
text
}
}
}`;
const book = query(query);
// book => {
// bookId: "468c95",
// title: "AppSync for Normal People",
// author: null,
// chapters: [
// {
// title: "Chapter 1: Dawn of Men",
// text: [
// "It was the best of times, it was the worst of times.",
// "..."
// ]
// },
// { ... }
// ]
// }
}
方法将触发AppSync中的某些解析器。该解析器将绝对始终返回相同的数据。因此,为什么不将解析程序使用的数据(我想您可以将其视为解析程序的 input )缓存在CloudFront中,以便可以从内存中提供数据,而不必访问某些数据后端存储(如数据库)还是触发Lambda?!