Arangodb Foxx服务:多个还是一个?

Arangodb Foxx服务:多个还是一个?,arangodb,foxx,Arangodb,Foxx,我正在评估ArangoDb+Foxx的多租户应用程序 目前,我在\u system中有一个协调器服务,它创建新的数据库,并在数据库中安装一个服务,该服务将引导数据库并充当api层 使用一个单一的Foxx服务来处理整个api堆栈是否存在优化问题?或者将其拆分为许多较小的服务,以便将请求分散到不同的V8上下文中更好吗 最后,对于每个db/租户一个服务甚至多个服务,您现在是否需要在需要更新时更新每个租户的每个服务?当您尝试应用滚动或蓝色/绿色部署时,这听起来像是有很大的错误和bug空间。有没有更好的方

我正在评估ArangoDb+Foxx的多租户应用程序

目前,我在
\u system
中有一个协调器服务,它创建新的数据库,并在数据库中安装一个服务,该服务将引导数据库并充当api层

使用一个单一的Foxx服务来处理整个api堆栈是否存在优化问题?或者将其拆分为许多较小的服务,以便将请求分散到不同的V8上下文中更好吗

最后,对于每个db/租户一个服务甚至多个服务,您现在是否需要在需要更新时更新每个租户的每个服务?当您尝试应用滚动或蓝色/绿色部署时,这听起来像是有很大的错误和bug空间。有没有更好的方法在集群中使用Foxx处理多租户应用程序?可能是
\u系统
级别的单一服务


谢谢

Foxx服务可以为单个租户托管整个层/堆栈。对我来说,这是否是一个好主意的问题不是对每个租户本身的考虑,而是对功能统一的考虑。话虽如此,您的身份验证计划(只要托管在arangodb中)也可能发挥作用。单点登录和反向模式也可能会将您推入人为分离

如果通过针对复杂应用程序的既定方法推广,您对复杂性和由此产生的错误倾向的担忧听起来是无法管理的。良好的测试覆盖率应该很容易检测到这些错误。我还认为,同样的错误也可能发生在分布广泛的应用程序和更集中的应用程序,或者如您所说的单片应用程序中。但升级策略肯定应该是计划的一部分,如果您认为不同的部分可以保持不变,而其他部分需要更频繁地升级,那么将它们分开可能是有意义的


TLDR:没有主要的潜在机制,它会以某种方式强迫你。作为指导,我认为你应该能够向第三方解释你的决定

“没有主要的底层机制,它会以某种方式强迫您”除了“系统服务无法调用
useDatabase()
”这一事实之外?