gpt4 book ai didi

amazon-web-services - 在 AWS lambda 上运行 graphql 应用程序

转载 作者:行者123 更新时间:2023-12-02 02:51:58 24 4
gpt4 key购买 nike

我正在尝试在 AWS lambda 上运行 apollo graphql 服务器。服务器的当前架构是这样的 -

保存模式的一个主要 lambda 函数,这是客户端与之通信的函数。此函数中的每个解析器都会调用其他包含解析器核心逻辑的 lambda 函数。其他 lambda 函数使用 lambda.invoke 方法调用。

一堆其他 lambda 函数,每个函数都包含特定任务的逻辑。这些将由主 lambda 函数中的解析器使用。这些函数还与 dynamoDB 进行存储对话。

问题 - 客户端发出请求,主 lambda 函数接收它,调用另一个 lambda 函数获取结果,主函数获取结果,将结果返回给用户。主 lambda 函数不必要地运行,直到它从它调用的 lambda 函数中获取结果。这会增加成本,也可能有超过 2 层的链式店。

建议的一个解决方案是将所有内容都塞进一个函数中。但这在未来会不会很难扩展?当它长大时,我将再次开始面临同样的问题。

人们通常如何在 lambda 上构建他们的 graphql 服务器?

最佳答案

我已经在生产环境中运行“将所有内容都集成到一个 lambda 函数”架构中大约一年了,它的扩展性非常好(数百名用户请求庞大的 GIS 数据,由 5 名左右的开发人员组成的团队构建解析器)。

如果您想查看,我已经在 GitHub 上编写了一个引用实现:https://github.com/rozenmd/graphql-resolvers/tree/master/api

通常我们会将 resolvers.js 拆分到它自己的文件夹中,每个数据库模型都有一个文件。

关于amazon-web-services - 在 AWS lambda 上运行 graphql 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51854491/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com