【发布时间】:2016-06-19 23:29:01
【问题描述】:
我计划在 IIS 上的 .NET 中实现 GraphQL API,并将 dataLoader API 实现为 Node.js 应用服务器。 GraphQL 将连接到 SQL Server 的 dataLoader。
目前所有应用程序都将位于单个物理服务器上,但如果可扩展性需要,将来可能会分开。
我这样做的原因:
- 现有代码依赖于 IIS/COM/DCOM/ActiveX/.NET/ASP/ASPX
- 实施和推理更简单
- 访问控制(web服务器不需要看dataLoader代码,ACL可以在dataLoader中实现)
- 如果我有机会与不同的数据库(redis、mongodb 等)交互,会更容易
- 我可以逐步对部分代码进行切片和移植,以便更轻松地共享代码(使用单独的 Linux 服务器)
- (我喜欢)Node.js 开放探索,但还不能选择加入
首先,这有意义还是我在自找麻烦?
在 GraphQL 和 dataLoader 之间使用二进制序列化格式是否有意义?或者也许只是一个简单的 Web 服务会更简单?
我是否会因更多的往返行程而冒着性能问题的风险? (问题太开放了?直觉上看起来这最终会更好地扩展)
GraphQL 和 dataLoader 之间是否需要显式身份验证?或者我可以按原样发送会话数据(使用用户名),让 dataLoader 信任作为上下文给出的用户名吗?也许传递一个令牌? JWT 令牌在这里有用吗?
【问题讨论】:
-
看here。也许它可以帮助你。
-
@Oleg 谢谢,我实际上已经计划使用它(这是一个决定性因素)。它看起来稳定且经过深思熟虑。你碰巧有使用它的经验吗?
-
抱歉,到目前为止,我还没有使用 GraphQL for .NET 的实践经验。我只是计划将 ReactJS 解决方案集成到现有的 .NET 基础设施中。似乎一个人没有那么多的可能性。我发现了 .NET 的 GraphQL,这似乎很有趣,而且它还活着(有待进一步开发)。我想把链接发给你,因为到现在你还没有收到任何答复。
标签: javascript c# asp.net node.js graphql