express-graphql 中的 serverless vs serverfull?
Posted
技术标签:
【中文标题】express-graphql 中的 serverless vs serverfull?【英文标题】:serverless vs serverfull in express-graphql? 【发布时间】:2021-04-25 07:47:00 【问题描述】:我将自己介绍给无服务器并偶然发现:https://github.com/serverless-components/express 并且似乎无法理解部署到 heroku 的 serverfull 有什么区别?看到我在无服务器中有这个代码:
app.use(
"/graphql",
graphqlHTTP(async (request) =>
// add user context
console.log("test");
return
schema,
graphiql: true,
context:
request,
//user
,
;
)
);
module.exports = app;
和满服务器:
app.use(
"/graphql",
graphqlHTTP(async (request) =>
// add user context
return
schema,
graphiql: true,
context:
request,
,
;
)
);
app.listen(port, () => console.log(`Listening on port $port`));
有人可以告诉我在 express-graphql 中使用无服务器是否有优势?我的前端堆栈是 graphql-relay,我习惯于 express-graphql 并想使用 express-graphql 堆栈探索无服务器,但似乎找不到一个好的资源来做到这一点。正如我正在阅读this:
在这一点上,我认为值得注意的是,并非所有人都同意 在无服务器函数中运行 Express 是个好主意。作为保罗 Johnston 解释说,如果你正在为规模构建函数,它是 最好将每个功能分解成自己的功能 单一用途的功能。以我的方式使用 Express 意味着每个 当请求到达 API 时,整个 Express 服务器必须 从头开始 - 效率不高。部署到生产环境 风险自负。
请解释一下
【问题讨论】:
【参考方案1】:无服务器的一些好处:与将 24/7 全天候运行的传统服务器相比,您仅在需要时才按需执行代码。 此外,它还由服务提供商管理,因此您无需担心维护和扩展您的服务器。
你可以阅读更多
https://dashbird.io/blog/business-benefits-of-serverless
https://www.serverless.com/blog/running-scalable-reliable-graphql-endpoint-with-serverless
https://aws.amazon.com/serverless/
https://serverless.com/blog/serverless-architecture-code-patterns/
【讨论】:
以上是关于express-graphql 中的 serverless vs serverfull?的主要内容,如果未能解决你的问题,请参考以下文章
使用 express-graphql 和 HTTP 客户端从 graphql 获取数据
express-graphql 中的 serverless vs serverfull?
express-graphql 解析器参数在解析器中为空,但 info variableValues 填充了名称和值
Express-graphql“在运行突变和查询时无法使用 mongodb 读取未定义的属性‘集合’”