适当的 Falcor 架构会导致单片路由器吗?

Posted

技术标签:

【中文标题】适当的 Falcor 架构会导致单片路由器吗?【英文标题】:Does proper Falcor architecture lead to monolithic routers? 【发布时间】:2016-05-23 22:49:33 【问题描述】:

我正在尝试了解 Falcor 及其背后的概念。

阅读了我能找到的所有内容后,我明白应用程序应该使用单个模型。这个模型有一个单一的来源,这个来源是后端的一个端点,带有一个 Falcor 路由器。

查看路由器示例后,每个可能的路由都是单个源文件的一部分。

我在将微服务概念(显然被 Netflix 使用!)映射到此时遇到问题。当我将微服务架构与 Falcor 路由相结合时,如何分离路由?

【问题讨论】:

我也有这个问题。我们需要一种让微服务动态注册数据模型路由的方法(可能,但我们必须发明工具来做到这一点)。我们需要一种方法来让模型松散地了解子模型(例如,当它们是两个不同的微服务时,我们如何将文章与其作者结合起来)。 【参考方案1】:

在这一点上,Falcor 和经典 HTTP API 之间没有真正的区别。

您可以将路线拆分为多个文件。例如,每个文件一条路线。 您可以将模型拆分为子模型,并在不同机器上为每个子模型托管一个路由器,并让客户端分别请求每个模型。 您可以执行后者,然后添加一个“超级路由器”,将请求路由到子模型,以便客户端只与一个模型对话。

【讨论】:

你认为你可以提供一个你最后的项目符号的例子吗(一个指向 Gist 或 GitHub 问题的链接或???)。似乎这将是最好的解决方案。 您可以在路由器的处理程序中使用 HttpDataSource 委托给另一个远程 Falcor API。

以上是关于适当的 Falcor 架构会导致单片路由器吗?的主要内容,如果未能解决你的问题,请参考以下文章

Falcor路由器设置方法

有哪些 Falcor 路由器实施方案?

Falcor 路由器 Observable

Falcor 路由器应该从外部 API 返回值

为深度路径构建 falcor 路由器的有效方法?

Falcor 路由特定中间件