瑜伽graphql服务器+棱镜服务器:多租户

时间:2018-09-03 14:07:34

标签: graphql multi-tenant prisma prisma-graphql

我正在使用Prisma Server和Yoga GraphQL为多租户数据库设置后端环境

要管理多租户,我们选择使用Prisma Server的“ env”(dev / stage / prod)进行处理。 没关系,Prisma服务器并不难管理,现在每个租户都有一个端点,例如:http://localhost:4466/service/tenant/

之后,使用graphql get-schema从Prisma中轻松提取* .graphql。

但是,现在的困难是:如何为我需要的服务和租户设置GraphQL服务器?

基于不同的示例/ tuto / docs / ...,我找不到在index.js中设置GraphQL Server的方式,说:侦听多个URI,并且每个URI都连接一个棱镜服务器。

示例,我需要:

  

GraphQL Server端点http://localhost:4000/service-1/client-1/只能是请求http://localhost:4466/service-1/client-1/

     

并且对于client-2(第二租户)http://localhost:4000/service-1/client-2/只能请求http://localhost:4466/service-1/client-2/

GraphQL Server似乎每个端口只能启动一次(此处为4000)

[EDIT]这是说明https://github.com/mouchimotte/prisma-yoga-multitenancy

的代码

1 个答案:

答案 0 :(得分:0)

正如@rma在评论中所说,您可以使用prisma-multi-tenant npm软件包来构建多租户应用程序。

您可以阅读这篇文章,其中介绍了如何使其工作:https://medium.zenika.com/building-a-multi-tenant-application-with-prisma-11bf890304d6