GraphQL和dataLoader在不同的应用服务器上。

问题描述 投票:4回答:1

我计划在IIS上的.NET中实现GraphQL API,并将dataLoader API作为Node.js应用服务器。 GraphQL将接口到dataLoader到SQL Server。目前所有的应用程序将在一个单一的物理服务器上,但如果可扩展性需要,将来可能会被分开。

我这样做的原因。

  • 现有的代码依赖于IISCOMDCOMActiveX.NETASPASPX。
  • 更容易实施和推理
  • 访问控制(web服务器不需要看到dataLoader代码,ACLs可以在dataLoader中实现。
  • 如果我有机会与不同的数据库(redis、mongodb等)接口,会更容易。
  • 我可以逐步切分和移植部分代码,以便更容易地进行代码共享(用独立的Linux服务器)。
  • (我喜欢)Node.js开放探索,但还不能选择加入。

首先,这是合理的还是我在自找麻烦?

在GraphQL和dataLoader之间使用二进制序列化格式是否合理? 或者也许只是一个简单的web服务会更简单?我是否会因为更多的往返而面临性能问题的风险?直观上看来,这最终会有更好的扩展)GraphQL和dataLoader之间是否需要显式认证? 或者我可以只发送会话数据(包括用户名),让dataLoader信任作为上下文给出的用户名? 也许传递一个令牌? JWT令牌在这里有用吗?

javascript c# asp.net node.js graphql
1个回答
0
投票

GraphQL-dotnet从那时起就已经成熟了一些,而且看起来很不错。我后来研究了一些解决方案,比如AWS的API网关GraphQL支持,还有一些Azure Functions的解决方案支持GraphQL。

这些东西涉及到的一些技术和设计选择,对这里和那里都有帮助。 但由于实际的原因,这从来没有真正实现过,这些关注的大部分问题也从来没有变得相关。

© www.soinside.com 2019 - 2024. All rights reserved.