我有一个 Elixir Umbrella 应用程序,带有 Phoenix、Absinthe (graphQL)。在AppWeb
,我的AppWeb.Router
路线请求,处理/graphql
和Absinthe.Plug
使用MyApp.Schema
。
在其中AppWeb.Schema
,我使用import_types
. 我将Users
用作示例。
Users.Schema
有对象和字段,最终将在哪里resolve &Resolvers.resolve_x/2
我知道 Phoenix 正在对每个请求启动一个新进程,hexdocsAbsinthe.Schema
状态在 Absinthe 1.5 模式中是使用执行查询的相同进程构建的。这是否意味着由 phoenix 请求创建的每个新进程都与单个模式( AppWeb.Schema
) 进程通信?如果是这样,那不会造成瓶颈吗?如果不是,那不是有很多代码(所有 OTP 应用程序中的所有解析器和相关函数)都要转移到每次产生的新模式进程中吗?