我计划在IIS上的.NET中实现GraphQL API,并作为Node.js应用服务器实现dataLoader API。 GraphQL将与dataLoader连接到SQL Server。
目前,所有应用程序都将位于单个物理服务器上,但是如果需要可伸缩性,将来可能会分开。
我这样做的原因:
首先,这有意义吗?还是我要麻烦?
在GraphQL和dataLoader之间使用二进制序列化格式是否有意义?也许只是一个简单的Web服务会更简单?
我是否会因为往返而冒着性能问题的风险? (问题太开放了吗?从直觉上看,这似乎最终会更好地扩展)
GraphQL和dataLoader之间是否需要显式身份验证?还是我可以按原样发送 session 数据(使用用户名),然后让dataLoader信任作为上下文提供的用户名?也许传递 token ? JWT token 在这里有用吗?
最佳答案
从那时起,GraphQL-dotnet已经有些成熟,并且看起来还不错。
此后,我研究了诸如AWS的API Gateway GraphQL支持的解决方案以及一些支持GraphQL的Azure函数解决方案。
这些事情涉及的一些技术和设计选择在这里和那里都是有帮助的。但是由于实际原因,这从来没有真正实现过,大多数这些关注也从未变得有意义。